《实验:数据库综合查询.docx》由会员分享,可在线阅读,更多相关《实验:数据库综合查询.docx(12页珍藏版)》请在第一文库网上搜索。
1、实验六:数据库综合查询一、实验目的1 .掌握SE1ECT语句的基本语法和查询条件表示方法;2 .掌握查询条件种类和表示方法;3 .掌握连接查询的表示及使用;4 .掌握嵌套查询的表示及使用;5 .了解集合查询的表示及使用。二、实验环境已安装SQ1Server2005企业版的计算机(13台);具有局域网环境,有固定IP;三、实验学时2学时四、实验要求1了解SE1ECT语句的基本语法格式和执行方法;2. 了解连接查询的表示及使用;3. 了解嵌套查询的表示及使用;4. 了解集合查询的表示及使用;5. 完成实验报告;五、实验内容及步骤以数据库原理实验5数据为基础,请使用T-SQ1语句实现进行以下操作:1
2、 .查询以DB_开头,且倒数第3个字符为s的课程的详细情况;USEstudentSE1ECT,课程号,=CnoJ课程名,=Cname,先行课号Cpno3学分,=CCreditFROMcourseWHERESUBSTRING(Cnamez1z3)=DB_ANDSUBSTRING(RIGHT(RTRIM(Cname),3)r1,1)=s,结果J消息课程号课程先行课学分2 .查询名字中第2个字为阳的学生姓名和学号及选修的课程号、课程名;USEstudentSE1ECT姓名=Student.Snamez*学号student.Sno,课程号,=course.Cno,课程名,=corse.CnameFRO
3、Mstudent,course,scWHEREstudent.Sno=sc.SnoANDcourse.Cno=sc.CnoANDSUBSTRING(1TRIM(student.Sname),2,1)阳而结果S1届I姓名I学课程课程名3 .列出选修了数学或者大学英语的学生学号、姓名、所在院系、选修课程号及成绩;USEstudentSE1ECT学号=Student.Sno,姓名,=Student.Sname,所在院系,=StUdent.Sdeptz,课程号,=sc.Cno,成绩=sc.GradeFROMstudent,course,scWHEREstudent.Sno=sc.SnoANDcours
4、e.Cno=sc.CnoAND(c。Urse.Cname=,数学,ORCoUrSe.Cname=大学英语)4结果,j)消息学号姓名所在院课程成绩1200515004(张衡IS2462200515005张向东IS2893200515006张向丽IS26542Q05158王民生MA2725200515009王小民MA276S200515010王丹丹MA2%一200515010王丹丹MA8918200515011张毅WM8679200515015李蕾EN8510200515016刘社CM8N.11200515017刘星耀CM8N.12200515018李贵EN8634 .查询缺少成绩的所有学生的详细
5、情况;USEstudentSE1ECTstudent.*FROMstudent,scWHEREstudent.Sno=sc.SnoANDsc.GradeISNU11口结果为消息SnoSnameSsexSageSdept1200515016刘社男21CM2200515017刘星耀男18CM5 .查询与张力(假设姓名唯一)年龄不同的所有学生的信息;USEstudentSE1ECT*FROMstudentWHERESname:=,张力,ANDSage!=(SE1ECTSageFROMstudentWHERESname=张力)口结果消息Sno东丽生民丹女男男男女女男女女男女男女男1-200515001
6、1220051500232005150044200515005520051500662005157720051500882005150099200515010102005150111120051501212200515014132005150151420051501615200515017刘星耀男18CM16200515019林自许男20WM17200515021男25CS18200515025朱小鸥女30WM6 .查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及平均成绩;USEstudentDEC1AREZ1_AVGINTSETZ1_AVG=(SE1ECTAVG(SC-Grade)
7、FROMsc,studentWHEREsc.Sno-student.SnoANDStUeient.Sname-张力GROUPBYsc.Sno,student.Sno)SE1ECTDISTINCT,学号-student.Sno,*姓名=Student.Sname,平均成绩=AVG(sc.Grade)FROMstudent,scWHEREsc.Sno=Student.SnoGROUPBYsc.Sno,student.Sno,student.SnameHAVINGAVG(sc.Grade)Z1-AVG后结算曲疝鼠学号姓名平均成绩120051501-1王丹丹93-“J7 .按照“学号,姓名,所在院系,
8、已修学分”的顺序列出学生学分的获得情况。其中已修学分为考试已经及格的课程学分之和;USEstudentSE1ECTDISTINCT学号,=StUdent.Sno,姓名=Student.Sname,所在院系=Student.Sdeptz,已修学分,=SUM(CASEWHENsc.Grade=60THENcourse.Ccredit*1E1SEOEND)FROMstudent,sc,courseWHEREsc.Sno=Student.SnoANDsc.Cno=Course.CnoGROUPBYstudent.Sno,student.Snamezstudent.Sdept学号姓名所在院已修学分120
9、0515001|赵菁菁CS11200515002李咏CS一3200515003张力CS44200515004张衡IS4J5200515005张向东IS96200515006张向丽IS67200515008王民生MA28200515009王小民MA29200515010王丹丹MA510200515011张毅WM311200515015李蕾EN012200515016刘社CM013200515017刘星耀CM014200515018李贵EN315200515021刘峻CS08 .列出只选修一门课程的学生的学号、姓名、院系及成绩;USEstudentSE1ECT,学号-student.Sno,*姓名
10、=Student.Sname,院系:StUdent.Sdept,成绩,=SC.GradeFROMstudent,scWHEREstudent.Sno=sc.SnoANDstudent.Sno=ANY(SE1ECTSnoFROMscGROUPBYSnoHAVINGCOUNT(Cno)=D口结果二I消息学号姓名院成绩200515003J张力CS912200515008王民生MA723200515009王小民MA764200515011张毅WM675200515015李蕾EN56200515016刘社CMNU117200515017刘星耀CMNU118200515018李贵EN639 .查找选修了至
11、少一门和张力选修课程一样的学生的学号、姓名及课程号;USEstudentSE1ECT学号,=StUdent.Sno,姓名=Student.Sname,课程号,=sc.CnoFROMstudent,scWHEREstudent.Sno=sc.SnoANDstudent.Sname:=,张力,ANDsc.Cno-ANY(SE1ECTsc.CnoFROMsc,studentWHEREsc.Sno-student.SnoANDstudent.Sname-张力,)二结果3消息学号姓名课程号1200515001赵菁菁12200515002李咏13200515004张衡14200515005张向东15200
12、515006张向丽110 .只选修“数据库”和“数据结构”两门课程的学生的基本信息;USEstudentSE1ECT学号,=Student.Sno,姓名,=Student.Sname,=student.Sdept,选修课程=course.CnameFROMstudent,sc,course,coursebWHEREstudent.Sno=sc.SnoANDcourse.Cno=sc.CnoANDb.Cno=course.CnoAND(sc.Sno=ANY(SE1ECTSnoFROMscGROUPBYSnoHAVINGCOUNT(Cno)=DAND(c。UrSe.Cname=,数据库,ORc。U
13、rSe.Cname=数据结构)OR(sc.Sno=ANY(SE1ECTSnoFROMscGROUPBYSnoHAVINGCOUNT(Cno)=2)ANDb.Cname数据库,ANDc。UrSe.Cname数据结构)11 .至少选修“数据库”或“数据结构”课程的学生的基本信息;USEstudentSE1ECTDISTINCT学号,=Student.Snoz姓名,=StUdent.Sname,学院,=Student.SdeptFROMstudent,scWHEREstudent.Sno=sc.SnoANDsc.Sno=ANY(SE1ECTsc.SnoFROMcourse,scWHEREcourse.Cnosc.CnoAND(CoUrSe.Cname=,数据库,ORCoUrSe.Cname=,数据结构D)二结果为消息学号姓名学院1200515001赵菁菁CS2200515002李咏CS