数据库实验5
- 格式:doc
- 大小:124.00 KB
- 文档页数:8
贵州大学计算机科学与信息学院
计算机科学与技术系上机实验报告
《数据库原理》实验报告
题目复杂查询(二)姓名班级软工102 日期2010.4.25 实验环境:SQL Server 环境
实验内容与完成情况:
一、实验目的
本实验的目的使学生熟练掌握SQL Server查询分析器的使用方法,本实验的目的是使学生进一步掌握SQL Server查询分析器的使用方法,加深SQL语言的嵌套查询的理解。
二、实验内容
本实验使用实验二中建立的基本表Student、Course、SC和Teacher中的元组。
在SQL Server2000查询分析器中,使用嵌套查询完成如下查询要求:
(1)求选修了数学课学生的学号和姓名;
(2)求2号课程的成绩高于李勇的学生学号和成绩;
(3)求其他系中比计算机系某一学生年龄小的学生信息
(即年龄小于计算机系年龄最大者的学生);
(4)求其他系中比计算机系学生年龄都小的学生信息
(即年龄小于计算机系年龄最小者的学生);
(5) 求其他系中比数学系某一教师工资高的教师信息;
(6) 求其他系中比数学系教师工资都高的教师信息;
(7) 求选修了2号课程的学生姓名(分别用带IN谓词和EXISTS谓词的子查询实现);
(8) 求没有选修3号课程的学生姓名;
(9) 求课程“信息系统”的平均成绩;
(10) 求和钟灵在同一个系的老师姓名;
(11) 查询选修了全部课程的学生姓名;
(12) 求至少选修了学号为“200215122”的学生所选修全部课程的学生学号。
三.实验步骤
将查询需求用SQL语言表示:在SQL Server查询分析器的输入区中输入SQL查询语句;编译和发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。
四.实验过程
(1) 求选修了数学课学生的学号和姓名;
执行语句和结果如下:
(2) 求2号课程的成绩高于李勇的学生学号和成绩;
执行语句和结果如下:
(3) 求其他系中比计算机系某一学生年龄小的学生信息
(即年龄小于计算机系年龄最大者的学生);
执行语句和结果如下:
或者:
(4) 求其他系中比计算机系学生年龄都小的学生信息(即年龄小于计算机系年龄最小者的学生);
执行语句和结果如下:
或者:
(5)求其他系中比数学系某一教师工资高的教师信息;
执行语句和结果如下:
(6)求其他系中比数学系教师工资都高的教师信息;
执行语句和结果如下:
(7)求选修了2号课程的学生姓名(分别用带IN谓词和EXISTS谓词的子查询实现);
1)带IN谓词子查询实现执行语句和结果如下:
2)EXISTS谓词子查询实现执行语句和结果如下
(8)求没有选修3号课程的学生姓名;
执行语句和结果如下:
(9)求课程“信息系统”的平均成绩;
执行语句和结果如下:
(10)求和钟灵在同一个系的老师姓名;
执行语句和结果如下:
(11)查询选修了全部课程的学生姓名;
执行语句和结果如下:
(12)求至少选修了学号为“200215122”的学生所选修全部课程的学生学号。执行语句和结果如下:
五、出现的问题及其解决方案(列出遇到的问题和解决办法,列出没有解决的问题)
问题1:
分析原因:
解决办法:
问题2:
分析原因:
解决办法: