一:分組函數的語句順序
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