问题
填空题
设有 s(学号,姓名,性别)和 sc(学号,课程号,成绩)两个表,下面 SQL 的 SELECT 语句检 索选修的每门课程的成绩都高于或等于 85 分的学生的学号、姓名和性别。SELECT 学号,姓名,性别 FROM sWHERE _________(SELECT * FROM sc WHERE sc.学号=s.学号 AND 成绩<85)
答案
参考答案:NOT EXISTS
解析:查询操作使用SELECT命令,本题是联接查询和嵌套查询的结合使用,内层查询是将s表和sc表通过 学号联接起来,查询的结果是所有成绩都低于85分信息的集合,外层查询s表中不在内层查询结果中出现的 学号、姓名和单位,在WHERE条件短语中要用NOT EXISTS谓词。 EXISTS是谓词,EXISTS或NOT EXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在 元组。