欢迎来到天天文库
浏览记录
ID:52718117
大小:285.00 KB
页数:5页
时间:2020-03-29
《实验四复杂查询.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程名称数据库原理实验成绩实验名称实验四复杂查询学号姓名班级日期2018.3.28实验目的:1.掌握SELECT语句复杂查询的使用。2.掌握多表连接查询的方法。3.掌握非相关子查询、相关子查询的用法。4.掌握谓词在查询中的应用。实验平台:利用安装的SQLSERVER2008及其交互查询工具-查询编辑器来操作SQL语言。实验内容:使用SQL语言实现下列嵌套查询。1.查询张星老师所教授的全部课程的课程名及其学分。如图1所示:图12.查询在信息系学习的全部学生的基本情况。如图2所示:图23.查询没有选修任何课程的学生的姓名
2、。如图3所示:5/5图34.查询选修课总学分在10学分以下的学生的姓名。如图4所示:图45.查询各门课程最高成绩的学生的姓名及其成绩。如图5所示:图56.查询选修了学号1001的学生所选修的全部课程的学生的学号。如图6所示:5/5图67.查询选修了张星老师所开设的全部课程的学生的姓名。如图7所示:图72.SQL语句:<1)select课程名,学分fromcoursewhere教师编号in(select教师编号fromteacherwhere教师姓名='张星'>(2)select*fromstudent,deptwhe
3、restudent.所在系=dept.所在系and系名='信息'<3)select姓名fromstudentwherenotexists(select课程号fromscwherestudent.学号=sc.学号>(4)selectstudent.姓名fromstudentwherestudent.学号5/5in(selectstudent.学号fromstudentleftouterjoinscon(student.学号=sc.学号>leftouterjoincourseon(course.课程号=sc.课程号>gr
4、oupbystudent.学号havingSUM(学分><10orisnull(SUM(学分>,0>=0><5)select课程号,姓名,成绩fromstudent,scwherestudent.学号=sc.学号and成绩in(selectMAX(成绩>fromscgroupby课程号><6)selectdistinct学号fromscscxwherenotexists(select*fromscscywherescy.学号='1001'andnotexists(select*fromscsczwherescx.学号
5、=scz.学号andscx.课程号=scz.课程号>><7)select姓名fromstudentwherenotexists(select*fromcourse,teacherwhere教师姓名='张星'andteacher.教师编号=course.教师编号andnotexists(select*fromscwherestudent.学号=sc.学号andcourse.课程号=sc.课程号>>实验总结<结论或问题分析):通过此次实验,了解SQL提供了SELECT语句进行数据查询。查询分类:单表查询、连接查询、嵌套查
6、询、集合查询等。1.掌握SELECT语句复杂查询的使用。2.掌握多表连接查询的方法。3.掌握非相关子查询、相关子查询的用法。4.掌握谓词在查询中的应用以及利用谓词演算将一个逻辑蕴涵的谓词等价转换为:p→q≡¬p∨q。申明:5/5所有资料为本人收集整理,仅限个人学习使用,勿做商业用途。5/5
此文档下载收益归作者所有