MySql - GROUP BY 和 HAVING關鍵字


本文主要針對GROUP BY 和 HAVING兩個關鍵字進行分析

使用測試表如下:

   

測試前,只知道GROUP BY 這個關鍵字的作用是根據一個字段進行分組,去重。HAVING對分組設置條件。

具體分組規則,設置條件不清楚。

 

測試開始

首先

單獨使用GROUP BY對 kecheng 字段進行分組:

SELECT * from a GROUP BY kecheng

執行sql,結果如下:

  

分析:

  根據 kecheng 字段分組,並去重了,去重規則為  kecheng  的第一條數據。

 

然后

加上HAVING,對分組進行設置條件:

  SELECT * from a GROUP BY kecheng HAVING fenshu > 80

執行sql,結果如下:

  

分析:

  本次結果相對於上次,少了一條數據

  張三   數學   75

  可以看出 HAVING 條件,是在 GROUP BY 分組后進行的篩選。

 

 

總結:

  GROUP BY,對一個字段進行去重(取第一條),分組, 

   HAVING  配合 GROUP BY 使用,對分組后的數據進行限制,可以使用聚合函數。

  

注:本貼具體測試情況沒有貼出,只是寫出了測試后的數據結果。

參考:https://blog.csdn.net/quinnnorris/article/details/71056445

https://www.cnblogs.com/lao-tang/p/6398577.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM