MySQL數(shù)據(jù)庫分組查詢group by語句詳解
一:分組函數(shù)的語句順序
1 SELECT ... 2 FROM ... 3 WHERE ... 4 GROUP BY ... 5 HAVING ... 6 ORDER BY ...
二:WHERE和HAVING篩選條件的區(qū)別
數(shù)據(jù)源 位置 關(guān)鍵字 WHERE 原始表 ORDER BY語句之前 WHERE HAVING 分組后的結(jié)果集 ORDER BY語句之后 HAVING
三:舉例說明
#1.查詢每個班學(xué)生的最大年齡 SELECT MAX(age),class FROM STU_CLASS GROUP BY CLASS; # 2.查詢每個班中男女生的最大年齡 SELECT MAX(age),class,sex FROM STU_CLASS GROUP BY class,sex; #3.查詢每個班中男女生的平局年齡,且平均年齡大于15歲 SELECT AVG(age),class,sex FROM STU_CLASS GROUP BY class,sex HAVING avg(age) > 15;
四:注意點
1.通常情況下,GROUP BY關(guān)鍵字與集合函數(shù)一起使用,先使用GROUP BY關(guān)鍵字將記錄分組,然后每組都使用集合函數(shù)進(jìn)行計算。在統(tǒng)計時經(jīng)常需要使用GROUP BY關(guān)鍵字和集合函數(shù)。
COUNT()
函數(shù):用于統(tǒng)計記錄的條數(shù)。
SUM()
函數(shù):用于計算字段的值的總和。
AVG()
函數(shù):用于計算字段的值的平均值。
MAX()
函數(shù):用于查詢字段的最大值。
MIN()
函數(shù):用于查詢字段的最小值。
以上就是MySQL數(shù)據(jù)庫分組查詢group by語句詳解的詳細(xì)內(nèi)容,更多關(guān)于MySQL數(shù)據(jù)庫語句的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
mysql連接數(shù)設(shè)置操作方法(Too many connections)
下面小編就為大家?guī)硪黄猰ysql連接數(shù)設(shè)置操作方法(Too many connections)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03Mysql如何通過ibd文件恢復(fù)數(shù)據(jù)
這篇文章主要介紹了Mysql如何通過ibd文件恢復(fù)數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08MySQL8.0.26的安裝與簡化教程(全網(wǎng)最全)
MySQL關(guān)是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用的標(biāo)準(zhǔn)化語言,今天通過本文給大家分享MySQL8.0.26的安裝與簡化教程使全網(wǎng)最詳細(xì)的安裝教程,需要的朋友參考下吧2021-07-07關(guān)于Mysql-connector-java驅(qū)動版本問題總結(jié)
這篇文章主要介紹了Mysql-connector-java驅(qū)動版本問題,本文給大家介紹的很詳細(xì),通過原因說明問題小結(jié)個人建議給大家展示的很好,需要的朋友可以參考下2021-06-06Mysql中Insert into xxx on duplicate key update問題
在看代碼的過程中碰到了這一用法,不太理解,google了一下。它的意義其實是如果在insert語句末尾制定了on duplicate key update語句的話,則當(dāng)插入行會導(dǎo)致一個unique索引或者primary key中出現(xiàn)重復(fù)值,則執(zhí)行update中的語句,否則才插入新行2012-08-08