MySQL:计数不同值的发生
我试图find一个MySQL查询,将查找特定字段中的不同值,计数该值的出现次数,然后按计数sorting结果。
示例db
id name ----- ------ 1 Mark 2 Mike 3 Paul 4 Mike 5 Mike 6 John 7 Mark
预期结果
name count ----- ----- Mike 3 Mark 2 Paul 1 John 1
谢谢
SELECT name,COUNT(*) as count FROM tablename GROUP BY name ORDER BY count DESC;
那么这样的事情呢?
select name, count(*) as num from your_table group by name order by count(*) desc
即你正在select名字和出现的次数; 但按名称分组,因此每个名称只被选中一次。
那么,你按次数sorting,desc; 让最频繁出现的用户排在第一位