[英]MySQL Grouping using group_concat and then Group BY
我有一张这样的表:
基本上,我想对所有名称进行分组并给出此类分组的计数,例如:
因为有 2 个用户做饭和打扫,1 个洗衣服,4 个做饭。
我正在尝试使用 group_concat
SELECT group_concat(DISTINCT name) AS name, count(*)
FROM warehouse.test1
GROUP BY guid
但是,这不起作用,因为我需要按分组进行分组,然后对这些分组进行计数。
我不知道如何对分组进行分组,然后进行计数。
提前致谢,我感谢任何提醒!
更新根据我试过的答案
SELECT groupings, COUNT(*)
FROM (SELECT group_concat(DISTINCT name) AS groupings
FROM warehouse.test1
GROUP BY saguid) t
GROUP BY groupings;
但是,我把它理解为
# groupings, COUNT(*)
'cleaning,cooking', '2'
'cooking', '2'
'washing', '1'
烹饪不应该是 4 吗?
我会用另一个查询包装这个查询来计算分组数据:
SELECT groupings, COUNT(*)
FROM (SELECT group_concat(DISTINCT name) AS groupings
FROM warehouse.test1
GROUP BY saguid) t
GROUP BY groupings
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.