MySQL学习笔记13——分组查询(GROUP BY)
分组查询要结合聚合函数使用,否则分组意义不大,为了便于理解,我先给出测试用的表和数据如下图:
(一)不结合聚合函数的写法
语句:SELECT * FROM teacher GROUP BY sex;
语句说明: 语句是按照性别分组
运行结果:
结果分析: 语句没有结合聚合函数,因此结果输出男组第一条数据和女组第一条数据,这个语句没有实际的应用价值。
(二)结合聚合函数的写法
语句:SELECT SUM(age) FROM teacher GROUP BY sex;
说明: 求男性年龄SUM与女性年龄SUM
运行结果:
结果分析 发现分组出来的数据不知道和组别的对应关系。
(二)分组查询的最佳写法
语句:SELECT sex,SUM(age)FROM teacher GROUP BY sex;
说明: 分组查询的时候把组别也一起查出来,哈哈哈!
运行结果:
(四)分组后条件语句:HAVING
语句:SELECT sex,SUM(age)FROM teacher GROUP BY sex HAVING SUM(age)>100;
说明: 只展示年龄之和大于100的组
结果: