问题 单项选择题

设有S(学号,姓名,性别)和SC(学号,课程号,成绩)两个表,如下SQL语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别,正确的是______。

A.SELECT学号,姓名,性别FROM s WHEREEXISTS;
(SELECT*FROM sc WHERE SC.学号=S.学号AND成绩<=85)

B.SELECT学号,姓名,性别FROM s WHERE NOT EXISTS;
(SELECT*FROM sc WHERE SC.学号=S.学号AND成绩<=85)

C.SELECT学号,姓名,性别FROM s WHERE EXISTS;
(SELECT*FROM sc WHERE SC.学号=S.学号AND成绩>85)

D.SELECT学号,姓名,性别FROM s WHERE NOT EXISTS;
(SELECT*FROM sc WHERE SC.学号=S.学号AND成绩<85)

答案

参考答案:D

解析: EXISTS或NOT EXISTS用来检查在子查询中是否有结果返回。每门成绩高于或等于85的条件,在EXISTS下是“成绩>=85”,在NOT EXISTS下是“成绩<85”。

探究题
多项选择题