MySQL數(shù)據(jù)庫(kù)分組查詢group by語(yǔ)句詳解
一:分組函數(shù)的語(yǔ)句順序
1 SELECT ... 2 FROM ... 3 WHERE ... 4 GROUP BY ... 5 HAVING ... 6 ORDER BY ...
二:WHERE和HAVING篩選條件的區(qū)別
數(shù)據(jù)源 位置 關(guān)鍵字 WHERE 原始表 ORDER BY語(yǔ)句之前 WHERE HAVING 分組后的結(jié)果集 ORDER BY語(yǔ)句之后 HAVING
三:舉例說(shuō)明
#1.查詢每個(gè)班學(xué)生的最大年齡 SELECT MAX(age),class FROM STU_CLASS GROUP BY CLASS; # 2.查詢每個(gè)班中男女生的最大年齡 SELECT MAX(age),class,sex FROM STU_CLASS GROUP BY class,sex; #3.查詢每個(gè)班中男女生的平局年齡,且平均年齡大于15歲 SELECT AVG(age),class,sex FROM STU_CLASS GROUP BY class,sex HAVING avg(age) > 15;
四:注意點(diǎn)
1.通常情況下,GROUP BY關(guān)鍵字與集合函數(shù)一起使用,先使用GROUP BY關(guān)鍵字將記錄分組,然后每組都使用集合函數(shù)進(jìn)行計(jì)算。在統(tǒng)計(jì)時(shí)經(jīng)常需要使用GROUP BY關(guān)鍵字和集合函數(shù)。
COUNT()
函數(shù):用于統(tǒng)計(jì)記錄的條數(shù)。SUM()
函數(shù):用于計(jì)算字段的值的總和。AVG()
函數(shù):用于計(jì)算字段的值的平均值。MAX()
函數(shù):用于查詢字段的最大值。MIN()
函數(shù):用于查詢字段的最小值。
以上就是MySQL數(shù)據(jù)庫(kù)分組查詢group by語(yǔ)句詳解的詳細(xì)內(nèi)容,更多關(guān)于MySQL數(shù)據(jù)庫(kù)語(yǔ)句的資料請(qǐng)關(guān)注本站其它相關(guān)文章!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。