问题 单项选择题

(31)~(35)题使用如下数据表:
学生.DBF:学号(C,8),姓名(C,6),性别(C,2)
选课.DBF:学号(C,8),课程号(C,3),成绩(N,3)

假设所有学生都已选课,所有的选课成绩都已确定。检索所有选课成绩都在90分以上(含)的学生信息,正确的SQL命令是( )。

A.SELECT*FROM 学生 WHERE 学号 IN(SELECT学号 FROM选课 WHERE 成绩>=90)

B.SELECT*FROM学生WHERE学号NOT IN(SELECT学号FROM选课 WHERE成绩<90)

C.SELECT*FROM学生WHERE 学号!=ANY(SELECT学号FROM选课 WHERE 成绩<90)

D.SELECT*FROM学生 WHERE 学号=ANY(SELECT学号 FROM选课 WHERE 成绩>=90)

答案

参考答案:B

解析: 本题可使用嵌套查询,选项B)中,先在内查询中将只要有一门课程成绩小于90分的学生的学号查找出来,形成一个集合,然后在外查询中,从“学生”表中找到该集合以外的学号,即是所有选课成绩都大于等于90分的学生。由于内查询中查出的结果是集合,该集合作为外查询中限定学号的条件,故应该用NOTIN运算符。

问答题 简答题
单项选择题 A型题