在MySQL中,GROUP BY關鍵字可以根據壹個或多個字段對查詢結果進行分組,類似於Excel中的數據透視表。可以單獨使用,但通常與聚合函數結合使用。
語法格式如下:
下面的演示基於與大區域相對應的省份的簡單表格。
單獨使用GROUP BY
單獨使用GROUP BY關鍵字時,查詢結果將只顯示每個組的第壹條記錄。
根據表中的省份進行匯總,查詢全國* * *分為幾個地區,SQL語句如下↓
按關聯聚合函數分組
上壹篇文章已經詳細介紹了五個聚合函數的用法,GROUP BY和聚合函數的組合也是最常見的。讓我們繼續使用省份表來找出每個地區有多少個省份,對應的聚合函數是COUNT函數。SQL語句如下↓
通過組合GROUP_CONCAT進行分組
這也是壹個非常有用的功能。GROUP_CONCAT()函數將把每個組的字段值組合成壹行並顯示出來。
繼續使用下面的省份表,在壹行中顯示每個地區對應的省份,用分號分隔。SQL語句如下↓
通過與匯總組合進行分組
WITH POLLUP關鍵字用於在所有記錄的末尾添加壹條記錄,該記錄是上面所有記錄的總和。SQL語句如下↓
通過組合HAVING進行分組
在MySQL中,可以使用HAVING關鍵字過濾分組數據。
使用HAVING關鍵字的語法格式如下:
HAVING關鍵字和WHERE關鍵字都可以用於過濾數據,並且HAVING支持WHERE關鍵字中的所有運算符和語法。但是,WHERE和HAVING關鍵字之間有幾個區別:
讓我們篩選有七個或更多省份的地區。SQL語句如下↓
組合排序依據
匯總數據也需要對半排序。匯總的查詢結果按ORDER BY排序,省份數量從大到小排序。SQL語句如下。
結束
◆ PowerBI開場白
◆ Python高德地圖可視化
◆ Python不規則條形圖