题目所涉及的表:
.
.
学生表:Student(Sno,Sname,Ssex,Sage,Sdept)
课程表:Course(Cno,Cname,Cpno,Ccredit)
学生选课表:SC(Sno,Cno,Grade)
.
.
题目分类:
.
具体题目后的【】内容为题目主要所涉及到的知识点。
.
单表查询
.
1. 查询全体学生的信息。【查询全部列】
select * from Student
.
2. 查询课程表(Course)全部信息。【查询全部列】
select * from Course
.
3. 查询选课表的全部信息。【查询全部列】
select * from SC
.
4.查询全体学生的姓名、学号和所在系。【查询指定列】
select Sname,Sno,Sdept from Student
.
5. 查询选修了课程的学生学号(不删除重复记录)。【查询指定列】
select Sno from SC where Cno is not null
.
6. 查询课程号、课程名及其先修课程号【查询指定列】
select Cno,Cname,Cpno from Course
.
7. 查询选修课程的学生学号及课号【查询指定列】
select Sno,Cno from SC where Cno is not null
.
8. 查询选课表(SC)中的学号、课号及成绩。【查询全部列】
select Sno,Cno,Grade from SC
.
9. 查询选修了3号课程的学生学号及其成绩,请按成绩降序排列结果。【Order by】
select Sno,Grade from SC where Cno='3' order by Grade desc
.
10. 查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄降序排列。【Order by】
select * from Student order by Sdept,Sage desc
.
11. 查询各个课号及相应的选课人数并按照课号升序排列。【Order by】
select Cno,count(*) from SC group by Cno order by Cno
.
12. 查询选修了三门以上课程的学生学号。【Group by】
select Sno from SC group by Sno having count(*)>3;
.
13. 查询平均成绩不小于60分的学生学号和平均成绩。【Group by】
select Sno,avg(Grade) from SC group by Sno having avg(Grade)>=60
.
14. 查询成绩不及格学生的学号并去掉重复。【消除重复行】
select distinct Sno from SC where Grade<'60'
.
15. 查询选了课的学生学号并消除重复行。【消除重复行】
select distinct Sno from SC
.
16. 查询王姓学生的年龄。【查询满足条件的元组】
select Sage from Student where Sname like '王%'
.
17. 查询CS系学生名字。【查询满足条件的元组】
select Sname from Student where Sdept='CS'
.
18. 查询年龄在20以下的学生姓名和年龄。【查询满足条件的元组】
select Sname,Sage from Student where Sage<'20'
.
19. 查询年龄在19~21(包含两端)之间的学生姓名、系别和年龄。
【查询满足条件的元组】
select Sname,Sdept,Sage from Student where Sage between 19 and 21
.
20. 查询年龄不在19~21(不含两端)的学生姓名、系别和年龄。
【查询满足条件的元组】