日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

mysql 名字分组查询id_MySQL对数据表进行分组查询(GROUP BY)

發(fā)布時(shí)間:2024/8/1 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 名字分组查询id_MySQL对数据表进行分组查询(GROUP BY) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

MySQL對(duì)數(shù)據(jù)表進(jìn)行分組查詢(GROUP BY)

GROUP BY關(guān)鍵字可以將查詢結(jié)果按照某個(gè)字段或多個(gè)字段進(jìn)行分組。字段中值相等的為一組。基本的語法格式如下:

GROUP BY 屬性名 [HAVING 條件表達(dá)式] [WITH ROLLUP]

屬性名:是指按照該字段的值進(jìn)行分組。

HAVING 條件表達(dá)式:用來限制分組后的顯示,符合條件表達(dá)式的結(jié)果將被顯示。

WITH ROLLUP:將會(huì)在所有記錄的最后加上一條記錄。加上的這一條記錄是上面所有記錄的總和。

GROUP BY關(guān)鍵字可以和GROUP_CONCAT()函數(shù)一起使用。GROUP_CONCAT()函數(shù)會(huì)把每個(gè)分組中指定的字段值都顯示出來。

同時(shí),GROUP BY關(guān)鍵字通常與集合函數(shù)一起使用。集合函數(shù)包括COUNT()函數(shù)、SUM()函數(shù)、AVG()函數(shù)、MAX()函數(shù)和MIN()函數(shù)等。

COUNT()函數(shù):用于統(tǒng)計(jì)記錄的條數(shù)。

SUM()函數(shù):用于計(jì)算字段的值的總和。

AVG()函數(shù):用于計(jì)算字段的值的平均值。

MAX()函數(shù):用于查詢字段的最大值。

MIN()函數(shù):用于查詢字段的最小值。

如果GROUP BY不與上述函數(shù)一起使用,那么查詢結(jié)果就是字段取值的分組情況。字段中取值相同的記錄為一組,但是只顯示該組的第一條記錄。

單獨(dú)使用GROUP BY關(guān)鍵字進(jìn)行分組

如果單獨(dú)使用GROUP BY關(guān)鍵字,查詢結(jié)果只顯示一個(gè)分組的一條記錄。

實(shí)例:將employee表的sex字段進(jìn)行分組查詢,將查詢結(jié)果與分組前的結(jié)果進(jìn)行對(duì)比。操作步驟如下:

1. 首先執(zhí)行不帶GROUP BY關(guān)鍵字的SELECT語句。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示的是employee表中原始的記錄情況。

2. 執(zhí)行帶有GROUP BY關(guān)鍵字的SELECT語句。代碼如下:

SELECT * FROM employee GROUP BY sex;

在DOS提示符窗口中查看執(zhí)行帶有GROUP BY關(guān)鍵字的SELECT語句的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果只顯示了兩條記錄。這兩條記錄的sex字段的值分別為“女”和“男”。

查詢結(jié)果進(jìn)行比較,GROUP BY關(guān)鍵字只顯示每個(gè)分組的一條記錄。這說明,GROUP BY關(guān)鍵字單獨(dú)使用時(shí),只能查詢出每個(gè)分組的一條記錄,這樣做的意義不大。因此,一般在使用集合函數(shù)時(shí)才使用GROUP BY關(guān)鍵字。

GROUP BY關(guān)鍵字與GROUP_CONCAT()函數(shù)一起使用

GROUP BY關(guān)鍵字與GROUP_CONCAT()函數(shù)一起使用時(shí),每個(gè)分組中指定的字段值會(huì)全部顯示出來。

實(shí)例:將employee表按照sex字段進(jìn)行分組查詢。使用GROUP_CONCAT()函數(shù)將每個(gè)分組的name字段的值顯示出來。

SELECT語句的代碼如下:

SELECT sex,GROUP_CONCAT(name) FROM employee GROUP BY sex;

在DOS提示符窗口中查看代碼的執(zhí)行效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示,查詢結(jié)果分為兩組。sex字段取值為“女”的記錄是一組,取值為“男”的記錄是一組。每一組中所有人的名字都被查詢出來了。

該實(shí)例說明,使用GROUP_CONCAT()函數(shù)可以很好的把分組情況表示出來。

GROUP BY關(guān)鍵字與集合函數(shù)一起使用

GROUP BY關(guān)鍵字與集合函數(shù)一起使用時(shí),可以通過集合函數(shù)計(jì)算分組中的總記錄、最大值、最小值等。

實(shí)例:將employee表的sex字段進(jìn)行分組查詢。sex字段取值相同的為一組。然后對(duì)每一組使用集合函數(shù)COUNT()函數(shù)進(jìn)行計(jì)算,求出每一組的記錄數(shù)。

SELECT語句的代碼如下:

SELECT sex,COUNT(sex) FROM employee GROUP BY sex;

在DOS提示符窗口中查看GROUP BY關(guān)鍵字與集合函數(shù)一起使用的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示,查詢結(jié)果按sex字段的取值進(jìn)行分組。取值為“女”的記錄為一組,取值為“男”的記錄為一組。COUNT(sex)計(jì)算出了sex字段不同分組的記錄數(shù)。第一組共有2條記錄,第二組共有3條記錄。

提示

通常情況下,GROUP BY關(guān)鍵字與集合函數(shù)一起使用,先使用GROUP BY關(guān)鍵字將記錄分組,然后每組都使用集合函數(shù)進(jìn)行計(jì)算。在統(tǒng)計(jì)時(shí)經(jīng)常需要使用GROUP BY關(guān)鍵字和集合函數(shù)。

GROUP BY關(guān)鍵字與HAVING一起使用

使用GROUP BY關(guān)鍵字時(shí),如果加上“HAVING 條件表達(dá)式”,則可以限制輸出的結(jié)果。只有符合條件表達(dá)式的結(jié)果才會(huì)顯示。

實(shí)例:將employee表的sex字段進(jìn)行分組查詢。然后顯示記錄數(shù)大于等于3的分組。

SELECT語句的代碼如下:

SELECT sex,COUNT(sex) FROM employee GROUP BY sex HAVING COUNT(sex)>=3;

在DOS提示符窗口中查看GROUP BY關(guān)鍵字與HAVING一起使用的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果只顯示了取值為“男”的記錄的情況。因?yàn)?#xff0c;該分組的記錄數(shù)為3,剛好符合HAVING COUNT(sex)>=3的條件。

該實(shí)例說明,“HAVING 條件表達(dá)式”可以限制查詢結(jié)果的顯示情況。

提示

“HAVING 條件表達(dá)式”與“WHERE 條件表達(dá)式”都是用于限制顯示的。但是,兩者起作用的地方不一樣。

WHERE 條件表達(dá)式:作用于表或者視圖,是表和視圖的查詢條件。

HAVING 條件表達(dá)式:作用于分組后的記錄,用于選擇符合條件的組。

按照多個(gè)字段進(jìn)行分組

在MySQL中,還可以按照多個(gè)字段進(jìn)行分組。例如,employee表按照d_id字段和sex字段進(jìn)行分組。分組過程中,先按照d_id字段進(jìn)行分組,遇到d_id字段的值相等的情況時(shí),再把d_id值相等的記錄按照sex字段進(jìn)行分組。

實(shí)例:將employee表按照d_id字段和sex字段進(jìn)行分組。

SELECT語句的代碼如下:

SELECT * FROM employee GROUP BY d_id,sex;

在DOS提示符窗口中查看按照多個(gè)字段進(jìn)行分組的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示,記錄先按照d_id字段進(jìn)行分組,因?yàn)榉謩e有兩條記錄的d_id的值為1001和1004,所以這4條記錄再次按照sex字段的取值進(jìn)行了分組。

GROUP BY關(guān)鍵字與WITH ROLLUP一起使用

使用WITH ROLLUP時(shí),將會(huì)在所有記錄的最后加上一條記錄。這條記錄是上面所有記錄的總和。

實(shí)例:將employee表的sex字段進(jìn)行分組查詢。使用COUNT()函數(shù)計(jì)算每組的記錄數(shù),并且加上WITH ROLLUP。

SELECT語句的代碼如下:

SELECT sex,COUNT(sex) FROM employee GROUP BY sex WITH ROLLUP;

在DOS提示符窗口中查看GROUP BY關(guān)鍵字與WITH ROLLUP一起使用的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示,計(jì)算出了各個(gè)分組的記錄數(shù),并且,在記錄的最后加上了一條新的記錄。該記錄的COUNT(sex)列的值正好是上面分組的值的總和。

實(shí)例:將employee表的sex字段進(jìn)行分組查詢。使用GROUP_CONCAT()函數(shù)查看每組的name字段的值,并且加上WITH ROLLUP。

SELECT語句的代碼如下:

SELECT sex,GROUP_CONCAT(name) FROM employee GROUP BY sex WITH ROLLUP;

在DOS提示符窗口中查看SELECT語句WITH ROLLUP參數(shù)的操作效果。如下圖所示:

上圖中代碼執(zhí)行的結(jié)果顯示,GROUP_CONCAT(name)顯示了每個(gè)分組的name字段的值。同時(shí),最后一條記錄的GROUP_CONCAT(name)列的值正好是上面分組name取值的總和。

時(shí)間: 05-14

總結(jié)

以上是生活随笔為你收集整理的mysql 名字分组查询id_MySQL对数据表进行分组查询(GROUP BY)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 97精品人妻一区二区三区 | 中文字幕无产乱码 | 欧美另类videossexo高潮 | 精产国产伦理一二三区 | 欧美成人aaa片一区国产精品 | 日本中文字幕视频 | 91在线视频观看 | 国产成人精品123区免费视频 | 在线免费观看网站入口在哪 | 美女啪啪免费视频 | 肉大捧一进一出免费视频 | 久久激情片 | 青草视频在线免费观看 | 日韩一区二区视频在线观看 | 一级网站在线观看 | 无码h黄肉3d动漫在线观看 | 97国产高清 | 少妇无码一区二区三区 | 欧美brazzers| 中文字幕免费在线 | 香蕉久久夜色 | 亚洲 自拍 另类 欧美 丝袜 | 久草免费在线视频 | 色吟av| 91久久在线 | 麻豆成人久久精品一区二区三区 | 欧美综合社区 | 国产精品天天操 | 在线国产小视频 | 国产精品99一区二区三区 | 成人国产片女人爽到高潮 | 亚洲作爱 | 日本老熟妇毛茸茸 | 欧美1| 中文字幕 成人 | a在线观看免费 | 色中色综合网 | 日日爱886 | 日韩午夜视频在线 | 18视频网站在线观看 | 久久久久九九 | 免费a级黄色片 | 午夜国产福利在线观看 | 学生孕妇videosex性欧美 | 亚洲乱熟女一区二区 | 婷婷另类小说 | 72pao成人国产永久免费视频 | 又粗又大又硬毛片免费看 | 波多野结衣亚洲天堂 | avtt亚洲天堂 | 一区二区在线观看免费视频 | 男女做事网站 | 在线观看成人黄色 | 狠狠艹狠狠干 | 色婷婷免费视频 | 亚洲精品二 | 女人色极品影院 | 性做久久久久久久 | 国产野外作爱视频播放 | 日韩美女免费视频 | 欧美自拍一区 | 天天干天天狠 | 午夜精品一区二区三区在线 | 日少妇av | 久久国产影视 | 天天激情站 | 日韩综合在线视频 | 他揉捏她两乳不停呻吟动态图 | 国产青青| 国产特黄aaaaa毛片 | 免费在线看黄网站 | 在线免费观看一区二区三区 | 欧美日韩在线一区二区 | 亲切的金子片段 | 台湾色综合 | 日韩精品一二 | 国产在线播放91 | 国产欧美久久久精品免费 | 日本九九热 | 尤物网站在线 | 久久久久久久久久久久97 | 浮生影视在线观看免费 | 24小时日本在线www免费的 | 91精品国产乱码久久久 | 国产精品成人久久久久久久 | 亚洲女同女同女同女同女同69 | 午夜精品久久久久久久久 | 国产精品久久AV无码 | 丝袜 亚洲 另类 国产 制服 | 中国精品久久久 | 无限资源日本好片 | 无码国产精品久久一区免费 | 疯狂撞击丝袜人妻 | 超碰日韩 | 夜夜嗨av一区二区三区 | 在线观看日韩精品 | 秋霞影院午夜丰满少妇在线视频 | 日韩深夜视频 | 欧美一级大片 |