在MySQL中,我们可以使用 GROUP BY 子句实现分组查询数据。
基本的 SQL 语句格式为:
SELECT column1, aggregate_function(column2)
FROM table_name
WHERE columnN operator value
GROUP BY column1;
主要参数说明:
- column1:需要进行分组的列
- aggregate_function:聚合函数,如 SUM()、 COUNT()、AVG() 等
- column2:要进行聚合计算的列
- columnN:可选的WHERE条件
示例:
SELECT department, COUNT(*)
FROM employees
GROUP BY department;
该语句会查询每个部门的员工数量。
它先按department分组,再使用COUNT()统计每组的员工数。
我们也可以查询多个字段:
SELECT department, gender, COUNT(*)
FROM employees
GROUP BY department, gender;
它会查询每个部门的性别和员工数。
同时分组department和gender两列。
支持的聚合函数还包括:
- SUM():计算总和
- AVG():计算平均值
- MIN()/MAX():返回组内的最值
通过 GROUP BY 子句,我们可以对MySQL查询数据实现更复杂的分组统计。