柠檬试题库
search
首页 计算机 公务员 驾照 关于

设有购买表(顾客号,商品号,购买时间)。现要查询2012年顾客A购买了但顾客B没有购买的商品。有下列查询语句: Ⅰ.SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'A' AND 商品号 NOT IN ( SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'B') Ⅱ.SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'A' EXCEPT SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'B' Ⅲ.SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= 2012 AND 顾客号 = 'A' INTERSECT SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'B' Ⅳ.SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 = 'A' UNION SELECT 商品号 FROM 购买表 WHERE YEAR(购买时间)= '2012' AND 顾客号 <> 'B' 上述语句中,能够实现该查询要求的是()


  • A.仅Ⅰ和Ⅱ
  • B.仅Ⅰ和Ⅲ
  • C.仅Ⅰ和Ⅳ
  • D.全部
热度🔥360
参考答案:A
解析:

Ⅲ选项中INTERSECT返回两个集合皆有的数据,该SQL语句返回顾客A和B都购买的商品号,不符合题意;Ⅳ选项中的UNION查询出了顾客A购买的商品,通过UNION关键字合并了顾客B没有购买的商品,因此总的视图为顾客A购买的商品和B没有购买的商品总和,不符合要求。Ⅰ、Ⅱ实现的是顾客A购买商品集合与顾客B购买商品集合的差集。因此足要求的为Ⅰ和Ⅱ,答案为A。
复制题目向AI提问