4實驗四 復雜查詢_第1頁
4實驗四 復雜查詢_第2頁
4實驗四 復雜查詢_第3頁
4實驗四 復雜查詢_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

./實驗四復雜查詢一、實驗目的掌握兩個表以上的連接查詢的應用,包括嵌套查詢。二、實驗容〔1查詢比"林紅"年紀大的男學生信息。select*fromStudentwhereSex='男'andYEAR<Birth>-<selectYEAR<Birth>fromStudentwhereSname='林紅'><0〔2檢索所有學生的選課信息,包括學號、、課號、課程名、成績。selectSC.Sno,Sname,Sex,Classno,Cname,GradefromStudents,SC,Coursecwheres.Sno=SC.SnoandSC.cno=o〔3查詢已選課學生的學號、、課程名、成績。selectSC.Sno,Sname,Cname,GradefromStudents,coursec,SCwheres.sno=SC.o=SC.cno〔4查詢選修了"C語言程序設計"的學生的學號和。selectsc.Sno,SnamefromStudents,coursec,scwherec.Cname='C語言程序設計'ands.Sno=sc.Snoandsc.Cno=c.Cno〔5查詢與"虹"在同一個班級的學生學號、、家庭住址。a.用子查詢selectSno,Sname,Home_addrfromStudentwhereClassno='051'andSname!='虹'b.用連接查詢selectSno,Sname,Home_addrfromStudentwhereClassno=<selectClassnofromStudentwhereSname='虹'>andSname!='虹'〔6查詢其他班級中比"051"班所有學生年齡大的學生的學號、。selectSno,SnamefromStudentwhereClassno<>'051'andBirth<all<selectBirthfromStudentwhereClassno='051'>〔7<選作>查詢選修了全部課程的學生。本題使用除運算的方法。由題意可得另一種語言,沒有一個選了課的學生沒有選course表里的課程。那么,我們需要兩個NOTEXISTS表示雙重否定;另一種思路可詳見書例4.52selectSnamefromStudentwherenotexists<select*fromCoursewherenotexists<select*fromSCwhereSno=Student.snoando=Co>>〔8<選作>查詢至少選修了學生"20110002"選修的全部課程的學生的學號,。selectSno,SnamefromStudentwhereSnoin<selectdistinctSnofromSCasSC1wherenotexists<select*fromSCasSC2whereSC2.Sno='20110002'andnotexists<select*fromSCasSC3whereSC3.Sno=SC1.SnoandSC3.cno=SC2.cno>>>〔9檢索學生的學號、、學習課程名及課程成績。selects.Sno,Sname,Cname,GradefromStudents,Coursec,SCwheres.Sno=sc.Snoandsc.Cno=c.Cno〔10檢索選修了"高數(shù)"課且成績至少高于選修課程號為"002"課程的學生的學號、課程號、成績,并按成績從高到低次序排列。由題意得,選修了高數(shù)課的學生的成績要高于選修002課號課程的學生的成績selectdistinctSno,Cno,GradefromSCwhereCnoin<selectCnofromCoursewhereCname='高數(shù)'>andGrade><selectMAX<Grade>fromSCwhereo='002'>orderbyGradedesc〔11檢索選修3門以上課程的學生的學號、總成績〔不統(tǒng)計不及格的課程,并要求按總成績的降序排列出來。selectSno,sum<grade>as總成績fromSCwhereSnoin<selectSnofromSCgroupbySnohavingcount<*>>3>andGrade>=60groupbySnoorderby總成績desc〔12檢索多于3名學生選修的并以3結尾的課程號的平均成績。selectavg<Grade>as平均成績fromSCwhereCnolike'%3'groupbyCnohavingcount<Cno>>3〔13檢索最高分與最低分之差大于5分的學生的學號、、最高分、最底分。selectdistinctSC.Sno學號,Sname,max<grade>as最高分,min<grade>as最低分fromStudent,SCwhereSC.Sno=Student.SnogroupbySC.Sno,Snamehavingmax<grade>-min<grade>>5〔14外連接對實驗二中的表6和表7做一個外連接查詢,顯示每門課程的課號、課名、選修該門課的學號、成績,沒有同學選修的課程〔如Visual_Basic也要在查詢結果中。selectc.Cno課號,Cname課名,Sno學號,Grade成績fromCoursecleftouterjoinSCon<c.Cno=SC.Cno>〔15創(chuàng)建一個表Student_other,結構同Student,輸入若干記錄,部分記錄和Student表中的相同。創(chuàng)建過程:createtableStudent_other<Snochar<8>primarykey,Snamevarchar<8>notnull,Sexchar<2>notnull,Birthsmalldatetimenotnull,Classnochar<3>notnull,Entrance_datesmalldatetimenotnull,Home_addrvarchar<40>,Sdeptchar<2>notnull,Postcodechar<6>>隨意輸入幾條Student表中沒有的信息,完成創(chuàng)建a.查詢同時出現(xiàn)在Student表和Student_other表中的記錄select*fromstudent_otherso,Studentswhereso.Sno=s.Snob.查詢Student表和Student_other表中的全部記錄select*fromstudentunionselect*fromstudent_other〔16〔選作創(chuàng)建一個數(shù)據(jù)庫Student_info_other,參數(shù)自定。創(chuàng)建過程:新建數(shù)據(jù)庫名稱確定,參數(shù)自定義,然后"確定"即可a.當前數(shù)據(jù)庫為Student_info,將Student_info數(shù)據(jù)庫中的Student_other復制到Student_info_other中。select*intoStudent_info_other.dbo.Student_otherfromStudent_info.dbo.Student_oth

溫馨提示

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

評論

0/150

提交評論