一:分组函数的语句顺序
1
2
3
4
5
6
7
8
9
10
11
12
|
1 SELECT ... 2 FROM ... 3 WHERE ... 4 GROUP BY ... 5 HAVING ... 6 ORDER BY ... |
二:WHERE和HAVING筛选条件的区别
1
2
3
4
5
|
数据源 位置 关键字 WHERE 原始表 ORDER BY 语句之前 WHERE HAVING 分组后的结果集 ORDER BY 语句之后 HAVING |
三:举例说明
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#1.查询每个班学生的最大年龄 SELECT MAX (age),class FROM STU_CLASS GROUP BY CLASS; # 2.查询每个班中男女生的最大年龄 SELECT MAX (age),class,sex FROM STU_CLASS GROUP BY class,sex; #3.查询每个班中男女生的平局年龄,且平均年龄大于15岁 SELECT AVG (age),class,sex FROM STU_CLASS GROUP BY class,sex HAVING avg (age) > 15; |
四:注意点
1.通常情况下,GROUP BY关键字与集合函数一起使用,先使用GROUP BY关键字将记录分组,然后每组都使用集合函数进行计算。在统计时经常需要使用GROUP BY关键字和集合函数。
COUNT()
函数:用于统计记录的条数。
SUM()
函数:用于计算字段的值的总和。
AVG()
函数:用于计算字段的值的平均值。
MAX()
函数:用于查询字段的最大值。
MIN()
函数:用于查询字段的最小值。
以上就是MySQL数据库分组查询group by语句详解的详细内容,更多关于MySQL数据库语句的资料请关注服务器之家其它相关文章!
原文链接:https://blog.csdn.net/weixin_45827693/article/details/108540844