使用GROUP BY配合COUNT函数可实现分类统计,如按category统计订单数:SELECT category, COUNT() AS count FROM orders GROUP BY category;支持多字段分组,如按category和年份:SELECT category, YEAR(order_date) AS year, COUNT() AS count FROM orders GROUP BY category, YEAR(order_date);可用HAVING过滤分组结果,如只显示数量大于5的类别:SELECT category, COUNT() AS count FROM orders GROUP BY category HAVING COUNT() > 5。

在 SQL 中进行分组查询并统计不同分类的数量,主要使用 GROUP BY 子句配合聚合函数 COUNT()。这种方法可以按某一列或多列的值将数据分组,并计算每组的记录数。
假设有一个订单表 orders,其中包含 category 字段表示商品类别,你想统计每个类别的订单数量:
SELECT category, COUNT(*) AS count FROM orders GROUP BY category;
这会返回每个 category 的名称及其对应的记录条数。
如果需要更细粒度的统计,比如按类别和年份共同分组:
SELECT category, YEAR(order_date) AS year, COUNT(*) AS count FROM orders GROUP BY category, YEAR(order_date);
这样会列出每个类别每年的订单数量。
本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,
0
使用 HAVING 子句对分组后的结果进行过滤。例如,只显示订单数大于 5 的类别:
SELECT category, COUNT(*) AS count FROM orders GROUP BY category HAVING COUNT(*) > 5;
HAVING 是作用于分组后的数据,而 WHERE 是在分组前过滤原始数据。
基本上就这些。掌握 GROUP BY 和 COUNT 的搭配,再根据需要加上 HAVING 或多字段分组,就能灵活实现各类分类统计需求。
以上就是SQL 分组查询如何统计不同分类数量?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号