pro*_*oee 2 mysql sorting count
在mysql中对一列数据进行计数和排序并将结果作为html列表输出的最佳方法是什么?
示例数据:
**Type**
Train
Car
Car
Car
Bus
Bus
Run Code Online (Sandbox Code Playgroud)
输出应首先按最大计数项排序:
- car(3)
- bus(2)
- train (1)
Run Code Online (Sandbox Code Playgroud)
另外,这是在大桌子上做的不好的做法吗?
试试这个查询:
select type, count(*) from vehicles group by type order by count(*) desc
Run Code Online (Sandbox Code Playgroud)
关于:
另外,这是在大桌子上做的不好的做法吗?
这取决于你的表引擎.MyISAM非常快,具有聚合函数count(*)
.但是,InnoDB必须每次扫描表并计数.所以我不建议count(*)
使用大型InnoDB表.相反,您可以在元表中存储"count"变量,并仅在插入/更新时更新它.