实验四

2022-07-21 07:55:21   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《实验四》,欢迎阅读!
实验

课程名称 实验名称 学号



数据库原理 复杂查询

姓名



班级



实验 成绩 日期





实验目的:

1. 掌握SELECT语句复杂查询的使用; 2. 掌握多表连接查询的方法;

3. 掌握非相关子查询、相关子查询的用法; 4. 掌握谓词在查询中的应用; 实验平台:

利用安装的SQL SERVER 2008及其交互查询工具-查询编辑器来操作SQL语言。 实验内容:

使用SQL语言实现下列嵌套查询。

1. 查询张星老师所教授的全部课程的课程名及其学分。

select Cname, Credit ,Teacher.*

from Course ,Teacher where Course.Cpno=Teacher.Cpno and Teacher.Tname='张星'



2. 查询在信息系学习的全部学生的基本情况。

select Student.* ,Dept.Sdept

from Student,Dept where Student.Sdept=Dept.Sdept AND Xname='信息'



3. 查询没有选修任何课程的学生的姓名。

select Sname from Student where Sno not in (select Sno from SC)



4. 查询选修课总学分在10学分以下的学生的姓名;

Select Sname from Student,SC,Course

Where SC.Cno=Course.Cno and Student.Sno=SC.Sno Group by Sname Having SUM(Credit<10)






5. 查询各门课程最高成绩的学生的姓名及其成绩;

select s1.Cno,Sname,Grade from student,SC s1

where student.Sno=s1.Sno and Grade= (select max(Grade) from SC s2

WHERE s1.Cno = s2.Cno )



6. 查询选修了课程号1001的学生所选修的全部课程的学生的学号;

Select DISTINCT SNO from SC SCX where NOT EXISTS ( SELECT * FROM SC SCY WHERE SCY.SNO ='1001' AND NOT EXISTS ( SELECT * FROM SC SCZ WHERE SCZ.SNO = SCX.SNO AND SCZ.CNO = SCY.CNO ) )



7. 查询选修了张星老师所开设的全部课程的学生的姓名;

Select Sname 姓名 From Student Where not EXISTS (select *from Course Where Cpno from Teacher Where Tname=’张星’) And not EXISTS (select *from SC

Where SC.Sno=Student.Sno and SC.Cno=Course.Cno));




实验总结(结论或问题分析)

通过实验掌握SELECT语句复杂查询的使用和多表连接查询的方法以及非相关子查询、相关子查询的用法,在实验中遇到些问题,在老师和同学的帮助下得以顺利解决,为以后更好的学习奠定了基础。




本文来源:https://www.dywdw.cn/4694897f6c85ec3a86c2c512.html

相关推荐
推荐阅读