文章詳情頁
mysql - 請問如何統計group by 后的結果
瀏覽:111日期:2022-06-18 18:26:58
問題描述
比如這條語句可以統計查詢總數
SELECT COUNT(`id`) AS `num` FROM `test`;
那如果加了一句group by 之后就不對了
SELECT COUNT(`id`) AS `num` FROM `test` GROUP BY `id`;
請問我想要知道GROUP BY出來有多少行數據,怎么做
問題解答
回答1:統計GROUP BY后的數據行數:
SELECT count(1) FROM ( SELECT * FROM `test` GROUP BY `id`) AS tmp;
統計id相同出現的次數:
SELECT id, count(1) FROM `test` GROUP BY `id`;
統計GROUP BY后的數據總和:
SELECT sum(c) FROM ( SELECT count(1) AS c FROM `test` GROUP BY `id`) AS tmp;
不清楚你想要查什么,但猜測是第一條SQL。
回答2:SELECT id,COUNT(id) AS num FROM test GROUP BY id;
回答3:樓主正解,思路就是先把查找到的結果放在一張“臨時表”,然后再統計總數
回答4:樓上正解,題主可參考
相關文章:
排行榜
