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;
四:注意點(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ù)庫分組查詢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-03
Mysql如何通過ibd文件恢復(fù)數(shù)據(jù)
這篇文章主要介紹了Mysql如何通過ibd文件恢復(fù)數(shù)據(jù)問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
MySQL的一些功能實(shí)用的Linux shell腳本分享
這篇文章主要介紹了Linux系統(tǒng)下MySQL的一些實(shí)用功能的shell腳本分享,包括啟動Memcached、binlog自動清理和修復(fù)主從同步這樣三個簡單的實(shí)例,需要的朋友可以參考下2015-12-12
MySQL8.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-06
Mysql中Insert into xxx on duplicate key update問題
在看代碼的過程中碰到了這一用法,不太理解,google了一下。它的意義其實(shí)是如果在insert語句末尾制定了on duplicate key update語句的話,則當(dāng)插入行會導(dǎo)致一個unique索引或者primary key中出現(xiàn)重復(fù)值,則執(zhí)行update中的語句,否則才插入新行2012-08-08

