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)文章!
- MySQL分組查詢獲取每組最新的一條數(shù)據(jù)詳解(group?by)
- Mysql分組查詢每組最新的一條數(shù)據(jù)的五種實(shí)現(xiàn)方法
- MYSQL數(shù)據(jù)庫(kù)查詢按日期分組統(tǒng)計(jì)詳細(xì)代碼
- MySQL數(shù)據(jù)庫(kù)聚合函數(shù)與分組查詢舉例詳解
- Mysql分組查詢每組最新一條數(shù)據(jù)的三種實(shí)現(xiàn)方法
- MySql數(shù)據(jù)庫(kù)基礎(chǔ)之分組查詢?cè)斀?/a>
- Mysql分組查詢每組最新的一條數(shù)據(jù)的五種實(shí)現(xiàn)過(guò)程
相關(guān)文章
mysql連接數(shù)設(shè)置操作方法(Too many connections)
下面小編就為大家?guī)?lái)一篇mysql連接數(shù)設(shè)置操作方法(Too many connections)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03
Mysql如何通過(guò)ibd文件恢復(fù)數(shù)據(jù)
這篇文章主要介紹了Mysql如何通過(guò)ibd文件恢復(fù)數(shù)據(jù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
用shell寫一個(gè)mysql數(shù)據(jù)備份腳本
本篇文章教給大家用shell寫一個(gè)mysql數(shù)據(jù)備份腳本,這是一個(gè)簡(jiǎn)單備份MYSQL數(shù)據(jù)庫(kù)的方法,一起跟著學(xué)習(xí)下吧。2017-12-12
MySQL的一些功能實(shí)用的Linux shell腳本分享
這篇文章主要介紹了Linux系統(tǒng)下MySQL的一些實(shí)用功能的shell腳本分享,包括啟動(dòng)Memcached、binlog自動(dòng)清理和修復(fù)主從同步這樣三個(gè)簡(jiǎn)單的實(shí)例,需要的朋友可以參考下2015-12-12
MySQL8.0.26的安裝與簡(jiǎn)化教程(全網(wǎng)最全)
MySQL關(guān)是一種關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),所使用的 SQL 語(yǔ)言是用于訪問(wèn)數(shù)據(jù)庫(kù)的最常用的標(biāo)準(zhǔn)化語(yǔ)言,今天通過(guò)本文給大家分享MySQL8.0.26的安裝與簡(jiǎn)化教程使全網(wǎng)最詳細(xì)的安裝教程,需要的朋友參考下吧2021-07-07
關(guān)于Mysql-connector-java驅(qū)動(dòng)版本問(wèn)題總結(jié)
這篇文章主要介紹了Mysql-connector-java驅(qū)動(dòng)版本問(wèn)題,本文給大家介紹的很詳細(xì),通過(guò)原因說(shuō)明問(wèn)題小結(jié)個(gè)人建議給大家展示的很好,需要的朋友可以參考下2021-06-06
Mysql中Insert into xxx on duplicate key update問(wèn)題
在看代碼的過(guò)程中碰到了這一用法,不太理解,google了一下。它的意義其實(shí)是如果在insert語(yǔ)句末尾制定了on duplicate key update語(yǔ)句的話,則當(dāng)插入行會(huì)導(dǎo)致一個(gè)unique索引或者primary key中出現(xiàn)重復(fù)值,則執(zhí)行update中的語(yǔ)句,否則才插入新行2012-08-08

