[SQL基础教程] 3-2 对表进行分组
GROUP BY
SELECT <列名1>,<列名2>,...
FROM <表名>
GROUP BY <列名1>,<列名2>,...;
聚合键
聚合键
GROUP BY 中指定的列称为聚合键或者分组列。
NULL元素的行会划分为一组,以空行表示。
理解
GROUP BY 将指定列的含元素作为KEY进行分组,同值的行数据划分为一组
语句顺序与执行顺序
- 子语句顺序
SELECT -> FROM -> WHERE -> GROUP BY
- 执行顺序
FROM -> WHERE -> GROUP BY -> SELECT
规则
注意
使用GROUP BY子句中SELECT子句的约束,SELECT中只能包含:
- 常数
- 聚合函数
- 聚合键
法则 3-9
使用GROUP BY子句时, SELECT子句不能不能包含聚合键以外的列。
法则 3-10
GROUP BY子句不能使用SELECT子句中定义的列的别名。
法则 3-11
GROUP BY子句结果的显示是无序的。
法则 3-12
只有在SELECT子句和HAVING子句中使用聚合函数。