实验内容:使用SELECT查询语句进行数据的查询(包括简单查询和高级查询)。
(1)创建学生成绩管理数据库(XSCJDB),并在该数据库中创建学生表Student(学号、姓名、性别、年龄、系别)、课程表Course(课程号、课程名、学分数、学时数)和成绩表SC(学号、课程号、成绩),然后在每个表里添加若干条记录。
(2)查询选修了课程的学生学号(取消重复值)。
(3)查询每个学生选修课程的门数,并为结果集中的目标列指定新的列标题。
(4)查询计算机系所有学生信息。
(5)查询学生姓名中包含“华”字的学生的姓名、年龄。
(6)查询姓“陈”并且年龄大于20岁的学生的姓名和所属院系信息。
(7)将所有学生信息按照平均成绩进行排序。
(8)查询选课超过一门的学生信息。
(9)找出平均成绩最高的学生的姓名、学号和成绩。
(1)创建学生成绩管理数据库(XSCJDB),并在该数据库中创建学生表Student(学号、姓名、性别、年龄、系别)、课程表Course(课程号、课程名、学分数、学时数)和成绩表SC(学号、课程号、成绩),然后在每个表里添加若干条记录。
(2)查询选修了课程的学生学号(取消重复值)。
select Sno
from SC
where Cno='1';
(3)查询每个学生选修课程的门数,并为结果集中的目标列指定新的列标题。
select Sno as 学号,count(Sno) as 选课门数
from SC
group by Sno
(4)查询计算机系所有学生信息。
select *
from Student
where Sdept='CS';
(5)查询学生姓名中包含“华”字的学生的姓名、年龄。
select Sname,Sage
from Student
where Sname like '%华';
(6)查询姓“陈”并且年龄大于20岁的学生的姓名和所属院系信息。
select Sname,Sdept
from Student
where Sname like '陈%' and Sage>19;
(7)将所有学生信息按照平均成绩进行排序。
select Student.Sno,Sname,Ssex,Sage,avg(Grade)as 平均分
from SC,Student
where Student.Sno=SC.Sno
group by Student.Sno,Sname,Ssex,Sage
order by avg(Grade);
(8)查询选课超过一门的学生信息。
select Student.Sno,Sname,Ssex,Sage
from SC,Student
where Student.Sno=SC.Sno
group by Student.Sno,Sname,Ssex,Sage
having count(Student.Sno)>1;
(9)找出平均成绩最高的学生的姓名、学号和成绩。
select top 1 student.Sno,Sname,avg(Grade) as 平均成绩
from Student,SC
where Student.Sno=SC.Sno
group by Student.Sno,Sname
order by avg(Grade) desc;