设有一个 Student 数据库,包括 数据库,包括 学生 , 课程 , 选修三个关系: 三个关系:
学生:S ( Sno ,Sname ,Ssex ,Sage,Sdept )
课程:C ( Cno ,Cname ,Term,Credit ,cpno)
选修:SC ( Sno ,Cno ,Score )
其中:学生关系 S 的属性分别表示:学号、姓名、性别、 年龄、专业
课程关系 C 的属性分别表示:课程号、课程名、开课学期、学分、先修课程号
选修关系 SC 的属性分别表示:学号、课程号、分数
请用 SQL 语句完成下面的操作:
(1)查询每门课程的间接先修课程(即先修课程的先修课程)
(2) 、 检索所有比“王华”年龄大的学生姓名、年龄和性别
(3) 、 检索选修 了课程号为’C02’ 课程的学生中成绩最高的学生的学号
(4)、 检索选修了4 门以上课程的学生学号和总成绩(不统计不及格的课程),并要求按照总成绩的降序排列。
(5)、 检索张力同学没有选修的课程的课程号
1)select Cpno from C,SC where C.cpno=SC.Cno
2)select Sname,Ssex,Sage from S where Sage > (select Sage from S where Sname='王华')
3)select Sno from SC where Cno='c02' and Score >All (select Score from SC where Cno = 'C02' )
4)select Sno sum(Score) from SC where Score >= 60 Group by Sno Having count(*)>4 order by 2 desc
5)select Cno from c where not exists (select * from SC,S where S.Sno=SC.Sno and SC.Cno=C.Cno and Sname='张力')