有如下SQL语句:  SELECT姓名FROM学生表WHERE学号IN;  (SELECT学号FROM成绩表WHERE成绩>90)  下列哪条命令与该SQL语句等价

admin2013-01-17  29

问题 有如下SQL语句:  SELECT姓名FROM学生表WHERE学号IN;  (SELECT学号FROM成绩表WHERE成绩>90)  下列哪条命令与该SQL语句等价

选项 A、SELECT姓名FROM学生表WHERE EXISTS;  (SELECT学号FROM成绩表WHERE成绩>90)  
B、SELECT姓名FROM学生表WHERE EXISTS;  (SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)  
C、SELECT姓名FROM学生表WHERE学号EXISTS;  (SELECT学号FROM成绩表WHERE学号=学生表.学号AND成绩>90)  D
D、SELECT姓名FROM学生表WHERE学号=;  (SELECT学号FROM成绩表WHERE成绩>90)

答案B

解析 IN是包含运算,此处子查询中得到多个结果,记录不惟一,因此不用“=”运算符;EXISTS是谓词,用来检查在子查询中时候有结果返回。
转载请注明原文地址:https://kaotiyun.com/show/HGsp777K
0

最新回复(0)