我想根據類別列對所有行進行計數,例如下面的例子,apple類別有兩行,所以得到類別名稱apple。謝謝。是否可以計算一個值的所有行的基數,並獲得最大計數(mysql)的列名?
id user_id category
1 2 apple
2 4 banana
3 6 apple
4 7 berry
//計算所有行,蘋果有兩排,最大數量,所以後來拿到類別名稱蘋果
我想根據類別列對所有行進行計數,例如下面的例子,apple類別有兩行,所以得到類別名稱apple。謝謝。是否可以計算一個值的所有行的基數,並獲得最大計數(mysql)的列名?
id user_id category
1 2 apple
2 4 banana
3 6 apple
4 7 berry
//計算所有行,蘋果有兩排,最大數量,所以後來拿到類別名稱蘋果
使用Group by
計數的類別。
然後命令該結果以降序計數的順序設置,並選擇頂部1.
查詢
select t.category
from
(
select category,
count(category) as cat_count
from fruits
group by category
)t
order by t.cat_count desc limit 1;
如果具有多個類別相同的最高計數。然後,
查詢
select t.category
from
(
select category,
count(category) as cat_count
from fruits
group by category
)t
where t.cat_count =
(
select count(category) as cat_count
from fruits
group by category
order by count(category) desc
limit 1
);
加限制,如果你需要頂級1,2,3這樣的極限X1 x是1,2,3
Select count(*) as total,category from table group by category from table order by count(*) desc
OP需要具有最大數量的類別名稱。 – Wanderer
非常感謝! – conan