设数据库有如下表: 产品(产品号,产品名,型号,单价) 购买(购买编号,产品号,购买数量,购买日期) 若要查询“哪些产品从来没有购买过”,正确的SQL语句是( )。

admin2016-08-23  31

问题 设数据库有如下表:
产品(产品号,产品名,型号,单价)
购买(购买编号,产品号,购买数量,购买日期)
若要查询“哪些产品从来没有购买过”,正确的SQL语句是(     )。

选项 A、SELECT*FROM产品WHERE NOT EXISTS(SELECT*FROM购买;WHERE产品号=产品.产品号)
B、SELECT*FROM产品WHERE产品号NOT EXISTS(SELECT产品号FROM购买)
C、SELECT*FROM产品WHERE产品号!=ANY(SELECT产品号FROM购买)
D、SELECT*FROM产品WHERE产品号=ANY(SELECT产品号FROM购买)

答案A

解析 NOT EXISTS用来检查在子查询中是否有结果返回(即存在元组或不存在元组)。本题中A项内层查询引用了外层查询的表,查询出在“产品”表中有而在“购买”表中没有的产品号,并给出该产品号对应的产品信息,故A项正确。选项B的命令格式错误。此格式不能使用NOT EXISTS,应该使用IN或NOT IN。ANY是量词,在进行比较运算时只要子查询中有一行能使结果为真,则结果就为真,故C、D两项不符合题目要求。
转载请注明原文地址:https://kaotiyun.com/show/inIp777K
0

相关试题推荐
最新回复(0)