oracle_day3多表查詢

一孩等、等值連接

1.查詢員工的名字肴敛、部門編號署海、部門名字

select emp.last_name,dept.id,dept.name

from s_emp emp,s_dept dept

where emp.dept_id =dept.id;

2.查詢部門的 id,名稱以及所在區(qū)域的名稱

select dept.id,dept.name,re.name

from s_region re,s_dept dept

where dept.region_id =re.id;

3.查詢每個員工所在的區(qū)域

select emp.last_name,re.name

from s_emp emp,s_region re,s_dept dept

where emp.dept_id=dept.id

and dept.region_id=re.id;

4.查詢Ngao所在的部門名稱以及相對應(yīng)區(qū)域名稱

select emp.last_name,dept.name dept_name,re.name region_name

from s_emp emp,s_dept dept,s_region re

where emp.dept_id =dept.id

????? and

????? dept.region_id = re.id

????? and

????? emp.last_name ='Ngao';

5.查詢工資大于1200的員工所在部門區(qū)域

select emp.last_name,emp.salary,re.name

from s_emp emp,s_dept dept,s_region re

where emp.dept_id =dept.id

????? and

????? dept.region_id = re.id

????? and

????? emp.salary >1200;

二、不等值連接

1.查詢員工的工資等級名稱

select emp.last_name,grade.gradeName

from s_emp emp,s_grade grade

where emp.salary>=grade.losal

and

emp.salary<=grade.hisal;

或者

select emp.last_name,grade.gradename

from s_emp emp,s_grade grade

where emp.salary between grade.losal andgrade.hisal;

三医男、外連接

1.左外連接

查詢員工所在部門砸狞,沒有部門的員工也要查詢出來

select emp.last_name,dept.id

from s_emp emp, s_dept dept

where emp.dept_id =dept.id(+);

或者

select emp.last_name,dept.id

from s_emp emp left joins_dept dept

on emp.dept_id =dept.id(+);

2.右外連接

查詢每個部門所對應(yīng)的員工,沒有員工的部門也要查詢出來

select emp.last_name,dept.id

from s_emp emp,s_dept dept

where emp.dept_id(+) =dept.id;

或者

select emp.last_name,dept.id

from s_emp emp right joins_dept dept

on emp.dept_id(+) =dept.id;

3.全連接

查詢所有的員工镀梭,以及對應(yīng)的部門的名字刀森,沒有任何員工的部門也要顯示出來,沒有部門的員工也要顯示出來

select emp.last_name,dept.id,dept.name

from s_emp emp full joins_dept dept

on emp.dept_id =dept.id;

1.? 自連接

select emp1.last_name,emp2.last_name

from s_emp emp1,s_emp emp2

where emp1.id =emp2.manager_id;

四报账、結(jié)果集

◆union? 獲得倆個結(jié)果集的【并集】

select emp.last_name,dept.id

from s_emp emp, s_dept dept

where emp.dept_id =dept.id(+)

union

select emp.last_name,dept.id

from s_emp emp,s_dept dept

where emp.dept_id(+) =dept.id;

◆union all?把倆個結(jié)果集合在一起顯示出來

select emp.last_name,dept.id

from s_emp emp, s_dept dept

where emp.dept_id =dept.id(+)

union all

select emp.last_name,dept.id

from s_emp emp,s_dept dept

where emp.dept_id(+) =dept.id;??

◆minus 第一個結(jié)果集除去第二個結(jié)果集和它相同的部分【差集】

select emp.last_name,dept.id

from s_emp emp, s_dept dept

where emp.dept_id =dept.id(+)

minus

select emp.last_name,dept.id

from s_emp emp,s_dept dept

where emp.dept_id(+) =dept.id;

◆intersect?求倆個結(jié)果集的【交集】(公共部分)

select emp.last_name,dept.id

from s_emp emp, s_dept dept

where emp.dept_id =dept.id(+)

intersect

select emp.last_name,dept.id

from s_emp emp,s_dept dept

where emp.dept_id(+) =dept.id;

五研底、偽列rownum

(1)rowmun 能等于1

查詢第一列數(shù)據(jù)

select*

from s_emp

where rownum = 1

(2)rownum 能大于0

select*

from s_emp

where rownum >0

rownum >=1 也是可以的

select*

from s_emp

where rownum >=1

(3)rownum小于任何數(shù)

select*

from s_emp

where rownum <=5

六、分頁

(1) 查詢第4條到第6條的數(shù)據(jù)

select*

from s_emp

where rownum <=6

minus

select*

from s_emp

where rownum <=3

(2)查詢第2條數(shù)據(jù)

select emp.*

from s_emp emp

where rownum <= 2

minus

select emp.*

from s_emp emp

where rownum <= 1;

七透罢、組函數(shù)

1.不使用groupby

select max(last_name)

from s_emp;


select min(last_name)

from s_emp;


select avg(last_name)

from s_emp;


select sum(last_name)

from s_emp;

計(jì)算有多少條數(shù)據(jù)

select count(last_name)

from s_emp;

標(biāo)準(zhǔn)差

select stddev(salary)

from s_emp;

?方差

select variance(salary)

from s_emp;

2.使用group by

(1)查詢員工表中每個部門的平均工資

select dept_id,avg(salary)

from s_emp

group by dept_id;

(2)查詢員工表中每個部門員工的人數(shù)

select dept_id,count(*)

from s_emp

group by dept_id;

3.Having

(1)查詢區(qū)域id以及名字榜晦,同時顯示該區(qū)域所有員工工資總和

select r.id,r.name,sum(salary)

from s_region r,s_emp e,s_dept p

where r.id=p.region_id ande.dept_id = p.id

group by r.id,r.name;

(2)查詢s_emp表中部門的平均工資大于等于1400的部門

select dept_id,avg(salary)

from s_emp

group by dept_id

having avg(salary) >=1400;

(3)求部門平均工資大于1000的信息,并按照部門|平均工資排序輸出

select e.dept_id,avg(salary)

froms_dept d,s_emp e

where d.id = e.dept_id

group bye.dept_id

having avg(salary)>1000

order by avg(salary);

having/where的區(qū)別

????? where:

????????????? 不能夠單獨(dú)使用

????????????? where緊跟在from

????????????? where在分組之前去執(zhí)行羽圃,不能夠出現(xiàn)組函數(shù)

?????? having:

????????????? 不能夠單獨(dú)使用

????????????? 緊跟在group by

????????????? 可以出現(xiàn)組函數(shù)

?????? where為什么不能夠出現(xiàn)組函數(shù):

????????????? 組函數(shù)是在分組以后執(zhí)行

????????????? 分組:

???????????????????? 默認(rèn)分組:

?????????????????????????? 將整列認(rèn)為是一個大組

???????????????????? group by:

?????????????????????????? where 在這個語句執(zhí)行之前執(zhí)行

select執(zhí)行順序

??????? select

????????????? from

????????????? where

????????????? group by

????????????? having

????????????? order by


????????????? 1.from

????????????? 2.where

????????????? 3.group by

????????????? 4.having

????????????? 5.select

????????????? 6.order by

組函數(shù)可以出現(xiàn)的位置:

group by執(zhí)行的語句都可以出現(xiàn)

having:

對分組后的數(shù)據(jù)進(jìn)一步篩選

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末乾胶,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌识窿,老刑警劉巖牙躺,帶你破解...
    沈念sama閱讀 216,919評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異腕扶,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)吨掌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,567評論 3 392
  • 文/潘曉璐 我一進(jìn)店門半抱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人膜宋,你說我怎么就攤上這事窿侈。” “怎么了秋茫?”我有些...
    開封第一講書人閱讀 163,316評論 0 353
  • 文/不壞的土叔 我叫張陵史简,是天一觀的道長。 經(jīng)常有香客問我肛著,道長圆兵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,294評論 1 292
  • 正文 為了忘掉前任枢贿,我火速辦了婚禮殉农,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘局荚。我一直安慰自己超凳,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,318評論 6 390
  • 文/花漫 我一把揭開白布耀态。 她就那樣靜靜地躺著轮傍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪首装。 梳的紋絲不亂的頭發(fā)上创夜,一...
    開封第一講書人閱讀 51,245評論 1 299
  • 那天,我揣著相機(jī)與錄音仙逻,去河邊找鬼挥下。 笑死,一個胖子當(dāng)著我的面吹牛桨醋,可吹牛的內(nèi)容都是我干的棚瘟。 我是一名探鬼主播,決...
    沈念sama閱讀 40,120評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼喜最,長吁一口氣:“原來是場噩夢啊……” “哼偎蘸!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,964評論 0 275
  • 序言:老撾萬榮一對情侶失蹤迷雪,失蹤者是張志新(化名)和其女友劉穎限书,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體章咧,經(jīng)...
    沈念sama閱讀 45,376評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡倦西,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,592評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了赁严。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扰柠。...
    茶點(diǎn)故事閱讀 39,764評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖疼约,靈堂內(nèi)的尸體忽然破棺而出卤档,到底是詐尸還是另有隱情,我是刑警寧澤程剥,帶...
    沈念sama閱讀 35,460評論 5 344
  • 正文 年R本政府宣布劝枣,位于F島的核電站,受9級特大地震影響织鲸,放射性物質(zhì)發(fā)生泄漏舔腾。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,070評論 3 327
  • 文/蒙蒙 一搂擦、第九天 我趴在偏房一處隱蔽的房頂上張望琢唾。 院中可真熱鬧,春花似錦盾饮、人聲如沸采桃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,697評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽普办。三九已至,卻和暖如春徘钥,著一層夾襖步出監(jiān)牢的瞬間衔蹲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,846評論 1 269
  • 我被黑心中介騙來泰國打工呈础, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留舆驶,地道東北人。 一個月前我還...
    沈念sama閱讀 47,819評論 2 370
  • 正文 我出身青樓而钞,卻偏偏與公主長得像沙廉,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子臼节,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,665評論 2 354

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