问题 单项选择题

显示没有签订任何订单的职员信息(职员号和姓名),正确的SQL语句是( )。

A) SELECT 职员职员号,姓名 FROM 职员 JOIN 订单
ON 订单.职员号=职员.职员号 GROUP BY 职员.职员号 HAVING COUNT(*)=0
B) SELECT 职员.职员号,姓名 FROM 职员 LEFT JOIN 订单
ON 订单.职员号=职员.职员号 GROUP BY 职员.职员号 HAVING COUNT(*)=0
C) SELECT 职员号,姓名 FROM 职员
WHERE 职员号 NOT IN (SELECT 职员号 FROM 订单)
D) SELECT 职员.职员号,姓名 FROM 职员
WHERE 职员.职员号<>(SELECT 订单.职员号 FROM 订单)

答案

参考答案:C

解析: 本题考查的是对SQL语句的书写格式的掌握。显示没有签订任何订单的职员信息等价于显示订单表中不存在的职员信息。此题不需要分组,所以选项A)和B)是错误的,在嵌套查询中不使用<>运算符,所以选项D)也是错误的。

判断题
单项选择题