八匈庭、高級查詢 2019-10-31、2019-11-01

  1. 分組查詢
    1)分組函數(shù)
    sum():求和
    avg():求平均
    max():求最小值
    min():求最小值
    count():求個數(shù)
    count(*):求行數(shù)
    注意:分組函數(shù)對空值忽略浑劳。
    分組函數(shù)(distint 列名):去掉重復(fù)值后求分組函數(shù)阱持。
    2)分組查詢
    a)group by 分組條件:按照分組條件相同的分作一組。
    b)(oracle)分組后在select后只能寫分組條件和分組函數(shù)魔熏,mysql沒有這個限制(可以寫衷咽,語法不錯)。
    c)分組條件可以是多列蒜绽,是按照多列的組合相等的分作一組镶骗。
    d)having子句:對分組之后的解雇進(jìn)行篩選。
    where:對行篩選躲雅。
    having:先分組鼎姊,對分組結(jié)果篩選。
    e) from where (group by)having select order by limit

①查詢每個部門的部門編號相赁,部門名稱相寇,部門人數(shù),最高工資钮科,最低工資唤衫,工資總和,平均工資绵脯。

SELECT deptno,dname,COUNT(deptno),MAX(sal),min(sal),sum(sal),avg(sal)
FROM emp e JOIN dept d USING (deptno)
GROUP BY deptno

②查詢每個部門佳励,每個崗位的部門編號,部門名稱蛆挫,崗位名稱赃承,部門人數(shù),最高工資璃吧,最低工資楣导,工資總和,平均工資畜挨。

SELECT d.deptno,dname,job,COUNT(deptno),MAX(sal),min(sal),sum(sal),avg(sal)
FROM emp e JOIN dept d USING (deptno)
GROUP BY deptno,job

③查詢每個經(jīng)理所管理的人數(shù)筒繁,經(jīng)理編號,經(jīng)理姓名巴元,要求包括沒有經(jīng)理的人員信息毡咏。

SELECT COUNT(*),m.empno,m.ename
FROM emp e LEFT JOIN emp m
ON e.mgr = m.empno
GROUP BY m.empno

④查詢部門人數(shù)大于2的部門編號,部門名稱逮刨,部門人數(shù)呕缭。

SELECT deptno,dname,COUNT(empno)
FROM emp e JOIN dept d USING (deptno)
GROUP BY deptno,dname
HAVING count(*) > 2

⑤查詢部門平均工資大于2000堵泽,且人數(shù)大于2的部門編號,部門名稱恢总,部門人數(shù)迎罗,部門平均工資,并按照部門人數(shù)升序排序片仿。

SELECT deptno,dname,COUNT(empno),avg(sal)
FROM emp e JOIN dept d USING (deptno)
GROUP BY deptno
HAVING COUNT(*) > 2 AND
avg(sal)>2000
ORDER BY COUNT(empno)
  1. 子查詢
    1)概念:括號中的查詢纹安,也被稱為內(nèi)部查詢,括號外的查詢砂豌,稱為外部查詢

2)執(zhí)行過程:
a)先執(zhí)行內(nèi)部查詢厢岂,的大確定的結(jié)果。
b)再根據(jù)內(nèi)部查詢結(jié)果阳距,執(zhí)行外部查詢塔粒。

3)子查詢分類:
a)單行子查詢:子查詢返回單行單列(一個結(jié)果)
b)多行子查詢:子查詢返回多行單列
c)多列子查詢:子查詢返回多行多列

4)單行子查詢,單行運算符:=筐摘、>=卒茬、<=、>蓄拣、<扬虚、<>。
子查詢可以寫在:from球恤、where、having荸镊。

5)多行子查詢咽斧,多行運算符:in、all躬存、any
in:在子查詢中出現(xiàn)

all:表示和子查詢的所有行結(jié)果進(jìn)行比較张惹,每一行必須都滿足條件。
< all::表示小于子查詢結(jié)果集中的所有行岭洲,即小于最小值宛逗。

all:表示大于子查詢結(jié)果集中的所有行,即大于最大值盾剩。
= all :表示等于子查詢結(jié)果集中的所有行,即等于所有值雷激,通常無意義。

any:表示和子查詢的任意一行結(jié)果進(jìn)行比較告私,有一個滿足條件即可屎暇。
< any:表示小于子查詢結(jié)果集中的任意一個,即小于最大值就可以驻粟。

any:表示大于子查詢結(jié)果集中的任意一個根悼,即大于最小值就可以。
= any:表示等于子查詢結(jié)果中的任意一個,即等于誰都可以挤巡,相當(dāng)于IN剩彬。

6)子查詢空值的問題
只要空值有可能成為子查詢結(jié)果集合中的一部分,就不能是哦那個not in運算符矿卑。(解決方案is not null)

7)多列子查詢:

SELECT * FROM emp
where (deptno,sal) in
(SELECT deptno,min(sal)
from emp
GROUP BY deptno)
  1. 相關(guān)子查詢
    1)定義:當(dāng)子查詢中引用的父查詢表中的列的時候襟衰,服務(wù)器執(zhí)行相關(guān)子查詢
    2)執(zhí)行過程:(父查詢每處理一行,子查詢執(zhí)行一次)
    a)取父查詢的每一行作為候選行粪摘。
    b)用候選行被子查詢引用列的值執(zhí)行子查詢瀑晒。
    c)用來自子查詢的值確認(rèn)或取消候選行。
    d)重復(fù)步驟a徘意、b苔悦、c,知道父查詢中沒有候選行椎咧。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末玖详,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子勤讽,更是在濱河造成了極大的恐慌蟋座,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件脚牍,死亡現(xiàn)場離奇詭異向臀,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)诸狭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進(jìn)店門券膀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人驯遇,你說我怎么就攤上這事芹彬。” “怎么了叉庐?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵舒帮,是天一觀的道長。 經(jīng)常有香客問我陡叠,道長玩郊,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任匾竿,我火速辦了婚禮瓦宜,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘岭妖。我一直安慰自己临庇,他們只是感情好反璃,可當(dāng)我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著假夺,像睡著了一般淮蜈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上已卷,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天梧田,我揣著相機(jī)與錄音,去河邊找鬼侧蘸。 笑死裁眯,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的讳癌。 我是一名探鬼主播穿稳,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼晌坤!你這毒婦竟也來了逢艘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤骤菠,失蹤者是張志新(化名)和其女友劉穎它改,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體商乎,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡央拖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了截亦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片爬泥。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖崩瓤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情踩官,我是刑警寧澤却桶,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站蔗牡,受9級特大地震影響颖系,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜辩越,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一嘁扼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧黔攒,春花似錦趁啸、人聲如沸强缘。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽旅掂。三九已至,卻和暖如春访娶,著一層夾襖步出監(jiān)牢的瞬間商虐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工崖疤, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留秘车,地道東北人。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓劫哼,卻偏偏與公主長得像叮趴,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子沦偎,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內(nèi)容

  • 引出 ?請思考如下問題疫向? –查詢所有員工的每個月工資總和,平均工資豪嚎? –查詢工資最高和最低的工資是多少搔驼? –查詢公...
    C_cole閱讀 7,288評論 0 3
  • 1.分組查詢 1.1什么是分組: 針對于班上所有的同學(xué): 分組情況1-按照性別分組:男生一組,女生一組侈询,之后可以統(tǒng)...
    賈里閱讀 2,003評論 1 2
  • 1. SQL 簡介 SQL 的目標(biāo) 理想情況下舌涨,數(shù)據(jù)庫語言應(yīng)允許用戶: 建立數(shù)據(jù)庫和關(guān)系結(jié)構(gòu) 完成基本數(shù)據(jù)管理任務(wù)...
    板藍(lán)根plank閱讀 2,344評論 0 11
  • 查詢是數(shù)據(jù)的一個重要操作。用戶發(fā)送查詢請求扔字,經(jīng)編譯軟件變異成二進(jìn)制文件供服務(wù)器查詢囊嘉,后返回查詢結(jié)果集給用戶,查詢會...
    產(chǎn)品小正閱讀 1,385評論 0 2
  • 章節(jié)目標(biāo) 通過本章學(xué)習(xí)革为,應(yīng)達(dá)到如下目標(biāo): 掌握子查詢可以解決的問題扭粱; 了解子查詢的分類; 掌握單行子查詢震檩、多行子查...
    涎涎閱讀 1,319評論 0 0