欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解MySQL中的分組查詢與連接查詢語(yǔ)句

 更新時(shí)間:2016年03月24日 16:52:10   作者:GALAXY_ZMY  
這篇文章主要介紹了MySQL中的分組查詢與連接查詢語(yǔ)句,同時(shí)還介紹了一些統(tǒng)計(jì)函數(shù)的用法,需要的朋友可以參考下

分組查詢 group by
group by 屬性名 [having 條件表達(dá)式][ with rollup]
“屬性名 ”指按照該字段值進(jìn)行分組;“having 條件表達(dá)式 ”用來(lái)限制分組后的顯示,滿足條件的結(jié)果將被顯示;with rollup 將會(huì)在所有記錄的最后加上一條記錄,該記錄是上面所有記錄的總和。

1)單獨(dú)使用
group by 單獨(dú)使用,查詢結(jié)果只顯示一個(gè)分組的一條記錄。
實(shí)例:

select * from employee group by sex;

將只顯示男女兩條記錄。

2)與group_concat()函數(shù)一起使用
每個(gè)分組中指定字段值都顯示出來(lái)
實(shí)例:

select sex,group_concat(name) from employee group by sex;

顯示結(jié)果中“女”會(huì)顯示所有sex為“女”的名字name

sex | group_concat(name)
女 | 小紅,小蘭
男 | 張三,王五,王六

3)與集合函數(shù)一起使用
實(shí)例:

select sex,count(sex) from employee group by sex;

結(jié)果:

sex | count(num)
女 | 1
男 | 3

count()為計(jì)算個(gè)數(shù)的方法。

4)與having一起使用
“having條件表達(dá)式”,可以限制輸出結(jié)果。只有滿足條件表達(dá)式的結(jié)果才顯示。
實(shí)例:

select sex,count(sex) from employee group by sex having count(sex) >= 3;

結(jié)果:

sex | count(sex)
男 | 3

“having條件表達(dá)式”作用于分組后的記錄。

5)按多字段進(jìn)行分組

select * from employee group by d_id,sex;

查詢結(jié)果先按d_id分組,再按sex進(jìn)行分組

6) 與with rollup一起使用
使用with rollup將會(huì)在所有記錄的最后加上一條記錄,這條記錄是上面所有記錄的總和
實(shí)例:

select sex,count(sex) from employee group by sex with rollup;

結(jié)果:

sex | count(sex)
女 | 1
男 | 5
null | 6

如果是字符串的話,比如姓名就會(huì)生成“張三,李四,王五”這種類型的結(jié)果,即name總和。

連接查詢
將兩個(gè)及兩個(gè)以上的表連接起來(lái)選取所需數(shù)據(jù)。

1)內(nèi)連接查詢:
當(dāng)兩個(gè)表中具有相同意義的字段值相等時(shí),就查詢出該條記錄。
實(shí)例:

復(fù)制代碼 代碼如下:

select num,name,employee.d_id,age,d_name from employee,department where employee.d_id = department.d_id

因字段名相同,所以取d_id字段值時(shí)最好指定哪張表的字段。

2)外連接查詢
select 屬性名列表 from 表名1 left|right join 表名2 on 表名1.屬性名1=表名2.屬性名2;
左連接查詢:
進(jìn)行左連接查詢時(shí),可以查出表名1中所指的表中所有記錄。而表名2所指表中,只能查詢出匹配的記錄。
實(shí)例:

復(fù)制代碼 代碼如下:

select num,name,employee.d_id,age,d_name from employee left join department on employee.d_id = department.d_id;

右連接查詢:
與左連接相反,可以查詢出表名2中的的所有記錄,而表名1中所指的表中,只查詢出匹配的記錄。


PS:使用集合函數(shù)查詢
集合函數(shù)包括count(),sum(),avg(),max()和min()。
1)count()函數(shù)
統(tǒng)計(jì)記錄條數(shù)
實(shí)例:

select count(*) from employee;

與group by一起使用

select d_id,count(*) from employee group by d_id;

上述語(yǔ)句會(huì)先分組后統(tǒng)計(jì)。

2) sum()函數(shù)
sum()函數(shù)是求和函數(shù)
實(shí)例:

select num,sum(score) from grade where num= 1001;

select num,sum(score) from grade group by num;

sum()只能計(jì)算數(shù)值類型字段。
3)avg()函數(shù)
avg()函數(shù)是求平均值函數(shù)。
實(shí)例:

select avg(age) from employee;

select course,avg(score) from group by course;

4)max(),min()函數(shù)
求最大值和最小值。
實(shí)例:
select max(age) from employee;
select num,course,max(score) from grade group by course;
對(duì)于字符串的最大值問(wèn)題,max()函數(shù)是使用字符對(duì)應(yīng)的ascii碼進(jìn)行計(jì)算的。

相關(guān)文章

  • MySQL通過(guò)函數(shù)存儲(chǔ)過(guò)程批量插入數(shù)據(jù)

    MySQL通過(guò)函數(shù)存儲(chǔ)過(guò)程批量插入數(shù)據(jù)

    這篇文章主要給大家介紹了關(guān)于MySQL通過(guò)函數(shù)存儲(chǔ)過(guò)程批量插入數(shù)據(jù),以及MySQL通過(guò)函數(shù)批量插入數(shù)據(jù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01
  • 深入了解Mysql邏輯架構(gòu)

    深入了解Mysql邏輯架構(gòu)

    這篇文章主要介紹了深入了解Mysql邏輯架構(gòu)的原因,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2020-12-12
  • 簡(jiǎn)單談?wù)凪ySQL數(shù)據(jù)透視表

    簡(jiǎn)單談?wù)凪ySQL數(shù)據(jù)透視表

    這篇文章主要介紹了簡(jiǎn)單談?wù)凪ySQL數(shù)據(jù)透視表的相關(guān)資料,需要的朋友可以參考下
    2019-08-08
  • MySQL?數(shù)據(jù)持久化過(guò)程講解

    MySQL?數(shù)據(jù)持久化過(guò)程講解

    這篇文章主要介紹了MySQL?數(shù)據(jù)持久化過(guò)程講解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,?需要的朋友可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-07-07
  • clickhouse分布式表的操作示例詳解

    clickhouse分布式表的操作示例詳解

    這篇文章主要為大家介紹了clickhouse分布式表的操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • MySQL中distinct與group by語(yǔ)句的一些比較及用法講解

    MySQL中distinct與group by語(yǔ)句的一些比較及用法講解

    這篇文章主要介紹了MySQL中distinct與group by的一些比較及用法講解,二者在查詢操作中的用法有很多相似之處,需要的朋友可以參考下
    2016-01-01
  • mysql視圖原理與用法實(shí)例詳解

    mysql視圖原理與用法實(shí)例詳解

    這篇文章主要介紹了mysql視圖原理與用法,結(jié)合實(shí)例形式詳細(xì)分析了mysql視圖的概念、原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下
    2020-04-04
  • phpMyAdmin下將Excel中的數(shù)據(jù)導(dǎo)入MySql的圖文方法

    phpMyAdmin下將Excel中的數(shù)據(jù)導(dǎo)入MySql的圖文方法

    使用phpMyAdmin將Excel中的數(shù)據(jù)導(dǎo)入MySql,需要將execl導(dǎo)入到mysql數(shù)據(jù)庫(kù)的朋友可以參考下。
    2010-08-08
  • PHP MySQL的安裝與配置詳解

    PHP MySQL的安裝與配置詳解

    本篇文章給大家介紹php mysql的安裝與配置,首先給大家介紹安裝配置php,接著介紹配置mysql、安裝mysql,本文介紹的非常詳細(xì),需要的朋友可以參考下
    2015-10-10
  • mysql批量新增和存儲(chǔ)的方法實(shí)例

    mysql批量新增和存儲(chǔ)的方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于mysql批量新增和存儲(chǔ)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評(píng)論