嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)_第1頁
嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)_第2頁
嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)_第3頁
嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)_第4頁
嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

PAGEPAGE2南京曉莊學(xué)院《數(shù)據(jù)庫原理與應(yīng)用》課程實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)五嵌套子查詢設(shè)計(jì)實(shí)驗(yàn)所在院(系):數(shù)學(xué)與信息技術(shù)學(xué)院班級:學(xué)號:姓名:1.實(shí)驗(yàn)?zāi)康恼莆斩啾聿樵兒妥硬樵兊姆椒?。熟練使用IN、比較符、ANY或ALL和EXISTS操作符進(jìn)行嵌套查詢操作。理解不相關(guān)子查詢和相關(guān)子查詢的實(shí)現(xiàn)方法和過程。2.實(shí)驗(yàn)要求針對“TM”數(shù)據(jù)庫,在SQLServer查詢分析器中,用T-SQL語句實(shí)現(xiàn)以下查詢操作:查詢選修了數(shù)據(jù)結(jié)構(gòu)與算法的學(xué)生學(xué)號和姓名。查詢07294002課程的成績低于孫云祿的學(xué)生學(xué)號和成績。查詢和孫云祿同年出生的學(xué)生的姓名和出生年份。查詢其他系中年齡小于數(shù)學(xué)與信息技術(shù)學(xué)院年齡最大者的學(xué)生。查詢其他系中比數(shù)學(xué)與信息技術(shù)學(xué)院學(xué)生年齡都小的學(xué)生。查詢同孫云祿數(shù)據(jù)庫原理與應(yīng)用課程分?jǐn)?shù)相同的學(xué)生的學(xué)號和姓名。查詢選修了07294002課程的學(xué)生姓名。查詢沒有選07294002課程的學(xué)生姓名。查詢同時(shí)選修了07295006和07295007課程的學(xué)生的學(xué)號。查詢所有未授課的教師的工號、姓名和院系,結(jié)果按院系升序排列。擴(kuò)展實(shí)驗(yàn):查詢和10060101選修的全部課程相同的學(xué)生的學(xué)號、課程號、期末考試成績。查詢至少選了10060101選修的全部課程的學(xué)生的學(xué)號。查詢年齡比所在院系平均年齡小的學(xué)生的學(xué)號、姓名、年齡、院系,按院系和年齡升序排列。查詢每門課都在80分以上的學(xué)生的學(xué)號和姓名。在SQLServerManagementStudio中新建查詢,盡可能用多種形式表示實(shí)驗(yàn)中的查詢語句,并進(jìn)行比較。按要求完成實(shí)驗(yàn)報(bào)告。3.實(shí)驗(yàn)步驟、結(jié)果和總結(jié)實(shí)驗(yàn)步驟/結(jié)果將調(diào)試成功的T-SQL語句寫在下方(標(biāo)明題號)。a)查詢選修了數(shù)據(jù)結(jié)構(gòu)與算法的學(xué)生學(xué)號和姓名。selectStudent.S_ID,Student.S_NamefromStudent,Course,SCwhereStudent.S_ID=SC.S_IDandCourse.C_ID=SC.C_IDandStudent.S_ID=SC.S_IDandC_Name='數(shù)據(jù)結(jié)構(gòu)與算法'i)查詢同時(shí)選修了07295006和07295007課程的學(xué)生的學(xué)號。selecta.s_idfromsca,scbwherea.s_id=b.s_idanda.C_ID='07295007'andb.c_id='07295006';j)查詢所有未授課的教師的工號、姓名和院系,結(jié)果按院系升序排列。selectT_ID,T_NAME,DEPT_IDfromTeacher whereT_IDnotin(selectT_IDfromTC) orderbyDEPT_ID擴(kuò)展實(shí)驗(yàn):查詢和10060101選修的全部課程相同的學(xué)生的學(xué)號、課程號、期末考試成績。selects.s_id,c_id,exam_gradefromstudents,scawheres.s_id=a.s_idandnotexists(( selectc_id fromscb whereb.s_id=s.s_id)except( selectc_id fromsc wheres_id='10060101'))andnotexists(( selectc_id fromsc wheres_id='10060101')except( selectc_id fromscc wherec.s_id=s.s_id))查詢至少選了10060101選修的全部課程的學(xué)生的學(xué)號。selects.s_id,c_id,exam_gradefromstudents,scawheres.s_id=a.s_idandnotexists(( selectc_id fromsc wheres_id='10060101')except( selectc_id fromscc wherec.s_id=s.s_id))查詢年齡比所在院系平均年齡小的學(xué)生的學(xué)號、姓名、年齡、院系,按院系和年齡升序排列。selectS_ID,S_Name,DEPT_ID,Date_of_BirthfromStudentwhereyear(getdate())-year(Date_of_Birth)<all(selectavg(year(getdate())-year(Date_of_Birth))as年齡fromStudent)orderbyDEPT_ID,year(getdate())-year(Date_of_Birth)查詢每門課都在80分以上的學(xué)生的學(xué)號和姓名。selects_id,s_namefromstudentswherenotexists( select* fromsc wheresc.s_id=s.s_idandexam_grade<=80)4.實(shí)驗(yàn)思考:①哪些類型的嵌套查詢可以用聯(lián)接查詢表示?如果只是單個(gè)的條件的時(shí)候,即只有一個(gè)連接條件的時(shí)候,使用兩種方式都是一樣的,但是,如果是多個(gè)條件的話,就要考慮一下效率了,一般這種情況下需要嵌套查詢更能提高效率,因?yàn)檫B接查詢是先要做笛卡爾積之后之后再篩選,而嵌套查詢的話可以先篩選。②嵌套查詢具有何種優(yōu)勢?嵌套查詢是逐層求解,避開了連接查詢的笛卡爾運(yùn)算,所以速度快,效率高。③相關(guān)子查詢和不相關(guān)子查詢的執(zhí)行順序有何不同,子查詢各自執(zhí)行幾遍?所謂相關(guān)子查詢是指,子查詢是一個(gè)獨(dú)立的查詢不與外部查詢相關(guān),子查詢將被先執(zhí)行,而且只被執(zhí)行一次,子查詢執(zhí)行完成后,再執(zhí)行外部的查詢,外部查詢在執(zhí)行過程中會使用到子查詢的結(jié)果。非相關(guān)子查詢,解除構(gòu)成子查詢的查詢語句與主查詢語句的嵌套關(guān)系或者通過表

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論