欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySql Group By對多個字段進(jìn)行分組的實現(xiàn)方法

 更新時間:2017年09月25日 11:55:31   作者:qq_27361945  
這篇文章主要介紹了MySql Group By對多個字段進(jìn)行分組的實現(xiàn)方法,需要的朋友可以參考下

在平時的開發(fā)任務(wù)中我們經(jīng)常會用到MYSQL的GROUP BY分組, 用來獲取數(shù)據(jù)表中以分組字段為依據(jù)的統(tǒng)計數(shù)據(jù)。比如有一個學(xué)生選課表,表結(jié)構(gòu)如下:

Table: Subject_Selection
Subject  Semester  Attendee
---------------------------------
ITB001  1     John
ITB001  1     Bob
ITB001  1     Mickey
ITB001  2     Jenny
ITB001  2     James
MKB114  1     John
MKB114  1     Erica

我們想統(tǒng)計每門課程有多少個學(xué)生報名,應(yīng)用如下SQL:

SELECT Subject, Count(*)
FROM Subject_Selection
GROUP BY Subject

得到如下結(jié)果:

Subject  Count
------------------------------
ITB001   5
MKB114   2

因為表里記錄了有5個學(xué)生選擇ITB001,2個學(xué)生選擇了MKB114。

產(chǎn)生這個結(jié)果的原因是:

GROUP BY X意思是將所有具有相同X字段值的記錄放到一個分組里。

那么GROUP BY X, Y呢?

GROUP BY X, Y意思是將所有具有相同X字段值和Y字段值的記錄放到一個分組里。

我們下面再接著要求統(tǒng)計出每門學(xué)科每個學(xué)期有多少人選擇,應(yīng)用如下SQL:

SELECT Subject, Semester, Count(*)
FROM Subject_Selection
GROUP BY Subject, Semester

上面SQL的意思是,對Subject_Selection表中的數(shù)據(jù)進(jìn)行分組,將具有相同Subject和Semester字段值的記錄放到同一個分組里去, 然后對每個分組中的數(shù)據(jù)應(yīng)用聚合函數(shù)(COUNT,SUM, AVG,etc)。

得到的結(jié)果是:

Subject  Semester  Count
------------------------------
ITB001   1     3
ITB001   2     2
MKB114   1     2

從表中的記錄我們可以看出這個分組結(jié)果是正確的有3個學(xué)生在第一學(xué)期選擇了ITB001, 2個學(xué)生在第二學(xué)期選擇了ITB001,

還有兩個學(xué)生在第一學(xué)期選擇了MKB114, 沒人在第二學(xué)期選擇MKB114。

再比如有一個訂單表,表中記錄了所有支付過的訂單

Table: Order

Product  Buyer    Spending
---------------------------------
PD001   Todd     12.00
PD001   Todd     12.00
PD001   Todd     12.00
PD001   Lily     12.00
PD001   Lily     12.00
PD002   Todd     20.00
PD002   Todd     20.00

現(xiàn)在我們想統(tǒng)計每個用戶在每種商品上總共花了多少錢,執(zhí)行如下SQL

SELECT Product,Buyer, SUM(Spending)
FROM `Order`
GROUP BY Product, Buyer

獲得的結(jié)果如下:

Product  Buyer   SUM
------------------------------
PD001   Todd   36.00
PD001   Lily   24.00
PD002   Todd   40.00

總結(jié):

在MYSQL中使用GROUP BY對表中的數(shù)據(jù)進(jìn)行分組時,

GROUP BY X意思是將所有具有相同X字段值的記錄放到一個分組里,

GROUP BY X, Y意思是將所有具有相同X字段值和Y字段值的記錄放到一個分組里。

以上所述是小編給大家介紹的MySql Group By對多個字段進(jìn)行分組,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Linux安裝MySQL教程(二進(jìn)制分發(fā)版)

    Linux安裝MySQL教程(二進(jìn)制分發(fā)版)

    這篇文章主要為大家詳細(xì)介紹了Linux安裝MySQL教程,二進(jìn)制分發(fā)版,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • 防止web項目中的SQL注入

    防止web項目中的SQL注入

    這篇文章介紹了防止web項目中的SQL注入,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。需要的朋友可以收藏下,方便下次瀏覽觀看
    2021-12-12
  • mysql把主鍵定義為自動增長標(biāo)識符類型

    mysql把主鍵定義為自動增長標(biāo)識符類型

    這篇文章主要介紹了mysql中如何把主鍵定義為自動增長標(biāo)識符類型,下面有個不錯的示例,大家可以參考下
    2014-07-07
  • MySQL觸發(fā)器trigger的使用

    MySQL觸發(fā)器trigger的使用

    這篇文章主要介紹了MySQL觸發(fā)器trigger的使用,觸發(fā)器是與表有關(guān)的數(shù)據(jù)庫對象,在滿足定義條件時觸發(fā),并執(zhí)行觸發(fā)器中定義的語句集合,需要的朋友可以參考下面文章的具體內(nèi)容
    2021-09-09
  • mysql列轉(zhuǎn)行以及年月分組實例

    mysql列轉(zhuǎn)行以及年月分組實例

    下面小編就為大家?guī)硪黄猰ysql列轉(zhuǎn)行以及年月分組實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 簡單了解添加mysql索引的3條原則

    簡單了解添加mysql索引的3條原則

    這篇文章主要介紹了簡單了解添加mysql索引的3條原則,如果表中查詢的列有一個索引,MySQL能快速到達(dá)一個位置去搜尋到數(shù)據(jù)文件的中間,沒有必要看所有數(shù)據(jù),需要的朋友可以參考下
    2019-06-06
  • MySQL敏感數(shù)據(jù)加密的實現(xiàn)方案

    MySQL敏感數(shù)據(jù)加密的實現(xiàn)方案

    這篇文章主要介紹了MySQL敏感數(shù)據(jù)加密的實現(xiàn)方案,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2024-02-02
  • Windows平臺下MySQL常用操作與命令

    Windows平臺下MySQL常用操作與命令

    Windows平臺下MySQL常用操作與命令,學(xué)習(xí)mysql的朋友可以參考下。
    2011-09-09
  • Python版Mysql爆破小腳本

    Python版Mysql爆破小腳本

    本文給大家分享的是使用Python制作的MySQL在線用戶密碼的暴力破解腳本,非常的好用,有需要的小伙伴可以參考下
    2016-10-10
  • Mysql計算字段長度函數(shù)之LENGTH函數(shù)

    Mysql計算字段長度函數(shù)之LENGTH函數(shù)

    MySQL length是指在MySQL數(shù)據(jù)庫中,用于獲取字符串或二進(jìn)制數(shù)據(jù)類型的長度,下面這篇文章主要給大家介紹了關(guān)于Mysql計算字段長度函數(shù)之LENGTH函數(shù)的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05

最新評論