如何对MySQL分组后的结果再次分组并统计数量
解决MySQL按
form_class分组并统计数量的问题 嘿,我完全get到你的需求了——就是要把现有查询结果里相同form_class值的记录合并,然后统计每个分组的记录条数对吧?
针对这个需求,你只需要在MySQL查询里用到GROUP BY分组关键字,搭配COUNT()聚合函数就能轻松实现。给你写个具体的SQL示例:
SELECT form_class, COUNT(*) AS record_count FROM your_table_name -- 记得替换成你实际的表名哦 GROUP BY form_class ORDER BY form_class;
简单解释下各部分的作用:
GROUP BY form_class:把所有form_class值相同的记录归为一个分组COUNT(*):统计每个分组里的总记录条数AS record_count:给统计结果的列起一个直观的别名,方便查看ORDER BY form_class:让最终结果按form_class的值排序,看起来更规整
如果你的原始查询里有过滤条件(比如WHERE子句),直接加在FROM之后、GROUP BY之前就可以,比如:
SELECT form_class, COUNT(*) AS record_count FROM your_table_name WHERE some_column = 'your_filter_value' -- 这里添加你的过滤条件 GROUP BY form_class ORDER BY form_class;
这样执行之后,你就能得到form_class为2的记录数是2,form_class为4的记录数是3的结果啦~
内容的提问来源于stack exchange,提问作者John Milo
相关产品推荐
相关产品推荐

