数据库中有学生表Student(Sno,Sname,Ssex,Sage,Sdept),各属性分别表示为学号,姓名,性别,年龄,所在系;学生选课表SC(Sno,Cno,Grade),各属性分别表示为学号,课程号以及成绩;课程表Course(Cno,Cname

admin2012-04-06  38

问题 数据库中有学生表Student(Sno,Sname,Ssex,Sage,Sdept),各属性分别表示为学号,姓名,性别,年龄,所在系;学生选课表SC(Sno,Cno,Grade),各属性分别表示为学号,课程号以及成绩;课程表Course(Cno,Cname,Cpno,Ccredit),各属性为课程号,课程名,先行课,学分。(先行课的意思是,比如课程号1有先行课5,说明要选课程1,就必须先选课程5)。用以上各表完成查询选修了全部课程的学生姓名的语句补充:
   SELETE Sname
   FROM Student
   WHERE NOT EXISTS
   (SELETE*
   FROM Course
   WHERE ______
   (SELETE*
   FROM SC
   WHERE  ____  AND ______
   )
   )

选项

答案NOT EXISTS Sno=Student.Sno Cno=Course.Cno

解析 SQL中没有全称变量,但是可以把带有全称变量的谓语转换成等价的带有存在量词的谓语,即转化为NOT EXISTS。可将题目的意思转化为:查询这样的学生,没有一门课程是他不选修的。故所需填的空位答案给出形式。
转载请注明原文地址:https://jikaoti.com/ti/38t7FFFM
0

随机试题
最新回复(0)