當前位置:首頁 » 操作系統 » 資料庫分組排序

資料庫分組排序

發布時間: 2025-05-21 20:49:10

A. MySQL分組、排序

上一喊碰擾篇聚合函數末尾處使用了GROUP BY,但鄭旦沒有做具體的介紹,這一篇就主吵御要介紹一下GROUP BY的使用方法。順便介紹一下對分組查詢的過濾關鍵詞HAVING的用法。

在MySQL中,GROUP BY關鍵詞可以根據一個或多個欄位對查詢結果進行分組,類似於Excel中的數據透視表。可以單獨使用,但一般情況下都是結合聚合函數來使用的。

語法格式如下:

下面演示都是基於這一張簡單的省份對應大區的表格。

【單獨使用GROUP BY】

單獨使用GROUP BY關鍵字時,查詢結果會只顯示每個分組的第一條記錄。

根據省份表裡面的大區進行聚合,查詢全國共分成了幾個大區,SQL語句如下↓

【GROUP BY結合聚合函數】

5個聚合函數上一篇已經詳細介紹了用法,GROUP BY和聚合函數結合使用也是最頻繁的,下面就繼續使用省份表來求每個大區有多少個省份,對應的聚合函數就是COUNT函數,SQL語句如下↓

【GROUP BY結合GROUP_CONCAT】

這還是一個很有用的功能,GROUP_CONCAT() 函數會把每個分組的欄位值都合並成一行顯示出來。

下面繼續使用省份表,把每個大區對應的省份放在一行展示,用分號分開,SQL語句如下↓

【GROUP BY結合WITH ROLLUP】

WITH POLLUP關鍵詞用來在所有記錄的最後加上一條記錄,這條記錄是上面所有記錄的總和,SQL語句如下↓

【GROUP BY結合HAVING】

在MySQL中,可以使用HAVING關鍵字對分組後的數據進行過濾。

使用 HAVING 關鍵字的語法格式如下:

HAVING關鍵詞和WHERE關鍵詞都可以用來過濾數據,且HAVING支持WHERE關鍵詞中所有的操作符和語法。但是WHERE和HAVING關鍵字也存在以下幾點差異:

下面篩選一下省份數量在7個及以上的大區,SQL語句如下↓

【GROUP BY結合ORDER BY】

聚合後的數據,一半情況下也是需要進行排序的,通過ORDER BY對聚合查詢結果進行排序,對省份數量按從大到小進行排序,SQL語句如下↓

End

◆ PowerBI開場白
◆ Python高德地圖可視化
◆ Python不規則條形圖

熱點內容
安卓伺服器怎麼打開 發布:2025-05-22 03:09:03 瀏覽:787
慧知行如何設置密碼成功 發布:2025-05-22 03:02:43 瀏覽:729
游戲源碼吧 發布:2025-05-22 02:51:51 瀏覽:339
anaconda和python 發布:2025-05-22 02:43:25 瀏覽:418
電腦畫面存儲 發布:2025-05-22 02:42:41 瀏覽:302
unix環境網路編程 發布:2025-05-22 02:41:21 瀏覽:569
傳奇富翁排行榜腳本 發布:2025-05-22 02:39:49 瀏覽:362
android按鈕邊框 發布:2025-05-22 02:29:55 瀏覽:691
mapjava遍歷 發布:2025-05-22 02:26:57 瀏覽:288
流暢玩逆戰需要什麼配置 發布:2025-05-22 02:23:15 瀏覽:55