2023年6月21日发(作者:)
评分
签名
日期
XXX大学实验报告
课程名称 数据库管理系统
实验名称 数据的查询
专业班级
姓 名
学 号
实验日期
实验地点
2012—2013学年度第 一 学期 一、实验目的
1. 掌握数据查询的操作方法
2. 熟悉SELECT 语句的常用句型及其用途
3. 学会通配符的正确使用
二、实验内容
1.基本的查询操作
2.条件查询
3.排序与分组查询
4.联结查询
5.嵌套查询
三、实验环境
Windows XP/2000/2003 操作系统、Microsoft SQL Server2005
四、操作步骤
一、将实验四的实验数据导入到数据库
二、利用T-SQL 命令输入命令完成相应的操作
(一)基本查询操作
1、查询TchInfo 表中教师的工号TID、姓名TName 和职称Title,要求查询结果列将TID、
TName 和Title 字段分别显示为工号、姓名和职称。
USE teachingData
SELECT TID as 工号,TNAME as 姓名, Title as 职称
FROM TchInfo
2、查询TchInfo 表中教师的全部信息。
USE teachingData
SELECT *
FROM TchInfo
3、查询TchInfo 表前6 行记录。
USE teachingData
SELECT top 6 *
FROM TchInfo
4、查询TchInfo 表中前50%的数据。
USE teachingData
SELECT top 50 percent *
FROM TchInfo
(二)条件查询
1、在表StuInfo 中查询05 级、计算机系的学生姓名、性别和所在系。
USE teachingData
SELECT sname,sex,dept
FROM StuInfo
WHERE major='计算机科学' and grade='05级'
第2页 共 7页 2、查询StuInfo 中出生年月介于1984 年9 月1 日到1985 年8 月31 日的学生信息。
USE teachingData
SELECT *
FROM StuInfo
WHERE birthday between '19840901' and '19850831'
3、查询职称为副教授和教授的教师的信息。
USE teachingData
SELECT *
FROM TchInfo
WHERE title IN ('副教授', '教授')
4、在表StuInfo 中查询所有学号为“05”开头学生的姓名SName 和专业Major。
USE teachingData
SELECT Sname, Major
FROM StuInfo
WHERE SID like '05%'
(三)排序与分组查询
1、查询表ScoreInfo 中选修了“00000001”课程的学生的学号和学生成绩,并按成绩进行降序排列。
USE teachingData
SELECT Sname, Score
FROM ScoreInfo,StuInfo
WHERE CID='00000001' and =
ORDER by score desc
2、通过表TchInfo 查询各院系的讲师数。
Select dept as 系,count(title) as 讲师数
from TchInfo
Where title='讲师'
group by dept
3、通过表scoreinfo 查询各门课程的平均成绩,要求显示列名为:课程代码和平均成绩。
Select CID as 课程代码, avg(score) as 平均成绩
from scoreinfo
group by CID
(四)联结查询
1、查询选修了高等数学课程且成绩在70 分以上的所有学生的姓名、成绩。
SELECT Sname,Score
FROM StuInfo,CourseInfo,ScoreInfo
WHERE = and =
and cname='高等数学' and >70
(五)嵌套查询
1、查询与张小红同学在同一个班同一个年级的学生姓名。
SELECT sname FROM StuInfo
WHERE (class in (select class FROM StuInfo where sname='张小红'))
and (grade in (select grade FROM StuInfo where sname='张小红'))
and sname<>'张小红'
第3页 共 7页 五、实验结果及总结
1、查询TchInfo 表中教师的工号TID、姓名TName 和职称Title,要求查询结果列将TID、
TName 和Title 字段分别显示为工号、姓名和职称。
查询TchInfo 表中教师的全部信息。结果如图:
2、查询TchInfo 表前6 行记录。
查询TchInfo 表中前50%的数据。结果如下图:
第4页 共 7页 3、在表StuInfo 中查询05 级、计算机系的学生姓名、性别和所在系。
查询StuInfo 中出生年月介于1984 年9 月1 日到1985 年8 月31 日的学生信息。
4、查询职称为副教授和教授的教师的信息。
在表StuInfo 中查询所有学号为“05”开头学生的姓名SName 和专业Major。
第5页 共 7页 5、查询表ScoreInfo中选修了“00000001”课程的学生的学号和学生成绩。
通过表TchInfo 查询各院系的讲师数。
6、查询选修了高等数学课程且成绩在70 分以上的所有学生的姓名、成绩。
第6页 共 7页 7、查询与张小红同学在同一个班同一个年级的学生姓名。
七、实验小结:
虽然在课上没有做完,但利用空余时间把实验做完,熟悉和基本掌握了利用T_SQL语句对SQL数据库进行查询操作,理解和掌握了部分通配符的使用,我想仅仅靠两节课的时间进行学习是不够的,还需要在空闲时间进行大量的实践操作才能很好的掌握并进行运用。
第7页 共 7页
2023年6月21日发(作者:)
评分
签名
日期
XXX大学实验报告
课程名称 数据库管理系统
实验名称 数据的查询
专业班级
姓 名
学 号
实验日期
实验地点
2012—2013学年度第 一 学期 一、实验目的
1. 掌握数据查询的操作方法
2. 熟悉SELECT 语句的常用句型及其用途
3. 学会通配符的正确使用
二、实验内容
1.基本的查询操作
2.条件查询
3.排序与分组查询
4.联结查询
5.嵌套查询
三、实验环境
Windows XP/2000/2003 操作系统、Microsoft SQL Server2005
四、操作步骤
一、将实验四的实验数据导入到数据库
二、利用T-SQL 命令输入命令完成相应的操作
(一)基本查询操作
1、查询TchInfo 表中教师的工号TID、姓名TName 和职称Title,要求查询结果列将TID、
TName 和Title 字段分别显示为工号、姓名和职称。
USE teachingData
SELECT TID as 工号,TNAME as 姓名, Title as 职称
FROM TchInfo
2、查询TchInfo 表中教师的全部信息。
USE teachingData
SELECT *
FROM TchInfo
3、查询TchInfo 表前6 行记录。
USE teachingData
SELECT top 6 *
FROM TchInfo
4、查询TchInfo 表中前50%的数据。
USE teachingData
SELECT top 50 percent *
FROM TchInfo
(二)条件查询
1、在表StuInfo 中查询05 级、计算机系的学生姓名、性别和所在系。
USE teachingData
SELECT sname,sex,dept
FROM StuInfo
WHERE major='计算机科学' and grade='05级'
第2页 共 7页 2、查询StuInfo 中出生年月介于1984 年9 月1 日到1985 年8 月31 日的学生信息。
USE teachingData
SELECT *
FROM StuInfo
WHERE birthday between '19840901' and '19850831'
3、查询职称为副教授和教授的教师的信息。
USE teachingData
SELECT *
FROM TchInfo
WHERE title IN ('副教授', '教授')
4、在表StuInfo 中查询所有学号为“05”开头学生的姓名SName 和专业Major。
USE teachingData
SELECT Sname, Major
FROM StuInfo
WHERE SID like '05%'
(三)排序与分组查询
1、查询表ScoreInfo 中选修了“00000001”课程的学生的学号和学生成绩,并按成绩进行降序排列。
USE teachingData
SELECT Sname, Score
FROM ScoreInfo,StuInfo
WHERE CID='00000001' and =
ORDER by score desc
2、通过表TchInfo 查询各院系的讲师数。
Select dept as 系,count(title) as 讲师数
from TchInfo
Where title='讲师'
group by dept
3、通过表scoreinfo 查询各门课程的平均成绩,要求显示列名为:课程代码和平均成绩。
Select CID as 课程代码, avg(score) as 平均成绩
from scoreinfo
group by CID
(四)联结查询
1、查询选修了高等数学课程且成绩在70 分以上的所有学生的姓名、成绩。
SELECT Sname,Score
FROM StuInfo,CourseInfo,ScoreInfo
WHERE = and =
and cname='高等数学' and >70
(五)嵌套查询
1、查询与张小红同学在同一个班同一个年级的学生姓名。
SELECT sname FROM StuInfo
WHERE (class in (select class FROM StuInfo where sname='张小红'))
and (grade in (select grade FROM StuInfo where sname='张小红'))
and sname<>'张小红'
第3页 共 7页 五、实验结果及总结
1、查询TchInfo 表中教师的工号TID、姓名TName 和职称Title,要求查询结果列将TID、
TName 和Title 字段分别显示为工号、姓名和职称。
查询TchInfo 表中教师的全部信息。结果如图:
2、查询TchInfo 表前6 行记录。
查询TchInfo 表中前50%的数据。结果如下图:
第4页 共 7页 3、在表StuInfo 中查询05 级、计算机系的学生姓名、性别和所在系。
查询StuInfo 中出生年月介于1984 年9 月1 日到1985 年8 月31 日的学生信息。
4、查询职称为副教授和教授的教师的信息。
在表StuInfo 中查询所有学号为“05”开头学生的姓名SName 和专业Major。
第5页 共 7页 5、查询表ScoreInfo中选修了“00000001”课程的学生的学号和学生成绩。
通过表TchInfo 查询各院系的讲师数。
6、查询选修了高等数学课程且成绩在70 分以上的所有学生的姓名、成绩。
第6页 共 7页 7、查询与张小红同学在同一个班同一个年级的学生姓名。
七、实验小结:
虽然在课上没有做完,但利用空余时间把实验做完,熟悉和基本掌握了利用T_SQL语句对SQL数据库进行查询操作,理解和掌握了部分通配符的使用,我想仅仅靠两节课的时间进行学习是不够的,还需要在空闲时间进行大量的实践操作才能很好的掌握并进行运用。
第7页 共 7页
发布评论