MySQL的Group By分組
一直以來,還是Oracle用的比較多。
MySQL的分組,看著總是有些奇怪。
實驗如下,建立初始化資料:
假設這是歌曲和歌曲分類的對映表,一個歌曲可以有多個分類,比如"華語"和"男歌星"。
MySQL可以進行如下分組:
他除了正常的分組,還可以帶上其他的欄位,如果這些額外的欄位有重複,則選擇第一個資料。
這個特性很方便,如果使用Oracle,可以使用相關子查詢模擬,
MySQL的分組,看著總是有些奇怪。
實驗如下,建立初始化資料:
-
create table sod_artist_category_relation(
-
songid int ,
-
CategoryID int
-
);
- insert into sod_artist_category_relation values (1,1),(1,2),(1,3),(2,3),(2,4),(3,1);
假設這是歌曲和歌曲分類的對映表,一個歌曲可以有多個分類,比如"華語"和"男歌星"。
MySQL可以進行如下分組:
- select songid,CategoryID,count(*) from sod_artist_category_relation group by songid;
他除了正常的分組,還可以帶上其他的欄位,如果這些額外的欄位有重複,則選擇第一個資料。
這個特性很方便,如果使用Oracle,可以使用相關子查詢模擬,
-
select songid,
-
(select min(CategoryID) from sod_artist_category_relation where songid=t1.songid) CategoryID,
- count(*) from sod_artist_category_relation t1 group by songid;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1166158/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- group by分組查詢
- MySQL - 分組連線欄位函式GROUP_CONCAT的使用MySql函式
- MYSQL學習筆記8: DQL分組查詢(group by)MySql筆記
- Mysql系列第九講 分組查詢詳解(group by & having)MySql
- MySQL8.0——Resource Group(資源組)MySql
- mysql group_concat 實現把分組欄位寫成一行的方法MySql
- MYSQL——分組MySql
- Android開發 - 掌握ConstraintLayout(九)分組(Group)AndroidAI
- sql中的left切割 與 group by後的兩次分組SQL
- mysql使用group by實現組內排序實戰MySql排序
- Mysql 5.7 基於組複製(MySQL Group Replication) - 運維小結MySql運維
- 聚合函式及分組與過濾(GROUP BY … HAVING)函式
- Django筆記十七之group by 分組用法總結Django筆記
- MySQL Group ReplicationMySql
- Mysql 分組排序的sql寫法MySql排序
- MySQL實現分組排序MySql排序
- mysql group by 取想要的結果MySql
- 使用ProxySQL實現MySQL Group Replication的故障轉移、讀寫分離(一)MySql
- mysql 分組取每個組的前幾名的問題MySql
- Elasticsearch 查詢結果分組統計,聚合檢索(group by stats)Elasticsearch
- MySQL group replication介紹MySql
- B組group1:A - Artwork
- 系統變數group_replication_group_seeds為空導致MySQL節點無法啟動組複製變數MySql
- MySQL 分組後取最新記錄MySql
- MySQL資料庫中的分組函式ROLLUPMySql資料庫函式
- MySQL最佳化GROUP BY方案MySql
- MySQL 之 only_full_group_byMySql
- MySQL分組後,取出每組最新申請的一條記錄MySql
- MySQL 中的 distinct 和 group by 的效能比較MySql
- IOMMU是如何劃分PCI device group的?dev
- C組group2 A - Odd Selection
- MySQL8.0-分組函式ROLLUP的基本用法(GROUPING)MySql函式
- MySQL 預設 only_full_group_byMySql
- 配置Mysql Group Replication遇到的問題筆記MySql筆記
- mysql加強(3)~分組(統計)查詢MySql
- MySQL 多表分組後獲取每一組的時間最大的那條記錄MySql
- MYSQL Group Replication搭建過程記錄MySql
- mysql order by 和 group by 順序問題MySql
- mysql sql_mode ONLY_FULL_GROUP_BYMySql