實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)

實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)

ID:46670974

大?。?6.00 KB

頁數(shù):6頁

時間:2019-11-26

實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)_第1頁
實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)_第2頁
實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)_第3頁
實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)_第4頁
實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)_第5頁
資源描述:

《實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、實(shí)驗(yàn)七子查詢與聯(lián)合查詢實(shí)驗(yàn)指導(dǎo)一、子查詢子查詢指在一個外層查詢屮包含另一個內(nèi)層查詢,即在一個SELECT語句屮的WHERE子句屮,包含有另一個SELECT語句,或者將一個SELECT語句作為另一個SELECT語句的新增列。外層的查詢成為主查詢,WHERE子句中包含的SELECT語句被稱為子查詢。一般將子查詢的查詢結(jié)果作為主查詢的查詢條件。子查詢也稱為嵌套查詢,可完成復(fù)雜的查詢操作。通常情況下,嵌套查詢都可以寫成連接的形式,但是有時候?qū)懗蛇B接形式比較復(fù)雜,不容易理解,因此將其寫成嵌套的形式,以將復(fù)雜的查詢分解成簡單的、易理解的子查詢。子查詢

2、與連接相比,由于子查詢的執(zhí)行需要增加一些附加的操作如排序等,而連接不需要增加附加操作,故一般情況下,連接優(yōu)于子查詢。使用子查詢時要注意以下幾點(diǎn)。(1)子查詢需要用()括起來。(2)子查詢內(nèi)可以再嵌套子查詢。(3)子查詢內(nèi)的SELECT語句不能使用imagestext>或ntext數(shù)據(jù)類型。(4)子查詢返回的結(jié)果值的數(shù)據(jù)類型必須兀配新增列或WHERE子句中的數(shù)據(jù)類型。1.子查詢作為新增列例1用子查詢顯示每個學(xué)生的平均分。SELECTa.sno,avg_Grade=(SELECTAVG(Grade)FROMscbWHEREa.sno=b.sn

3、o)FROMstudenta如果不用子查詢,可以用分組查詢。SELECTsno,AVG(Grade)asavg_GradeFROMscGROUPBYsno2.使用IN關(guān)鍵字語法格式為:WHERE表達(dá)式[NOT]IN(子查詢)說明:?IN表示屬于,即若表達(dá)式的值屬于子查詢返回的結(jié)果集屮的值,則滿足查詢條件。NOTIN表示不屬于。例2查詢與“劉晨”在同一個系學(xué)習(xí)的學(xué)生。SELECTSno,Sname,SdeptFROMStudentWHERESdeptIN(SELECTSdeptFROMStudentWHERE劉晨J1.使用比較運(yùn)算符語法格式

4、:WHERE表達(dá)式比較運(yùn)算符[ANYIALL](子查詢)ANY關(guān)鍵字表示任何一個(其中之一),只要與子查詢中一個值相符合即可;ALL關(guān)鍵字表示所有(全部),要求與子查詢中的所有值相符合。比較運(yùn)算符包扌舌:>、V、>=、v二、二、<>o例3找岀每個學(xué)生超過他選修課程平均成績的課程號。SELECTSnozCnoFROMSCxWHEREGrade>=(SELECTAVG(Grade)FROMSCyWHEREy?Sno=x?Sno)例4查詢其他系中比計(jì)算機(jī)系某一個學(xué)生年齡小的學(xué)生姓名和年齡。SELECTSname,SageFROMStudentW

5、HERESage'CS‘2.使用BETWEEN關(guān)鍵字語法格式:WHERE表達(dá)式1[NOT]BETWEEN(子查詢)AND表達(dá)式2WHERE表達(dá)式1[NOT]BETWEEN表達(dá)式2AND(子查詢)說明:?使用BETWEEN關(guān)鍵字,則查詢條件是表達(dá)式1的值必須介于子查詢結(jié)果與表達(dá)式2值之間;而使用NOTBETWEEN關(guān)鍵字則正好相反。例5找出每個學(xué)生的超過他選修課程平均成績且小于90分的課程號。SELECTSno,CnoFROMSCxWHE

6、REGradeBETWEEN(SELECTAVG(Grade)FROMSCyWHEREy?Sno=x.Sno)AND905.使用EXISTS關(guān)鍵字語法格式:WHERE[NOT]EXISTS(子查詢)說明:?EXISTS關(guān)鍵字表示存在雖詞,帶有EXISTS關(guān)鍵字的子查詢不返回任何數(shù)據(jù),只返回邏輯真值和邏輯假值。當(dāng)子查詢的結(jié)果不為空集時,返回邏輯真值,否則返冋邏輯假值。NOTEXISTS則與EXISTS查詢結(jié)果相反。例6查詢所有選修了1號課程的學(xué)生姓名。SELECTSnameFROMStudentWHEREEXISTS(SELECT*FROM

7、SCWHERESno=Student?SnoANDCno=111)例7查詢至少選修了學(xué)生200215122選修的全部課程的學(xué)生號碼。SELECTDISTINCTSnoFROMSCSCXWHERENOTEXISTS(SELECT*FROMSCSCYANDNOTEXISTS(SELECT*FROMSCSCZWHERESCZ.Sno=SCX.SnoANDSCZ.Cno=SCY.Cno))6.子?xùn)嗽兣c數(shù)據(jù)更新INSERT.UPDATE、DELETE這三種語句還能與子查詢結(jié)合,實(shí)現(xiàn)更加靈活的數(shù)據(jù)更新操作。(1)子查詢與INSERT語句。子查詢與IN

8、SERT語句相結(jié)合,可以完成一批數(shù)據(jù)的插入。語法格式為:INSERT[INTO]v表名〉[v列名表>]v子查詢〉(2)子查詢與UPDATE語句。子查詢與UPDATE語句相結(jié)合,一般是嵌在WHE

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。