以下5题使用下列数据表。 部门(部门号C (2)、部门名称C (10)) 职工(部门号C (2)、职工号C(4)、姓名C(8)、基本工资N(7,2))

admin2009-02-15  22

问题 以下5题使用下列数据表。
   部门(部门号C (2)、部门名称C (10))
   职工(部门号C (2)、职工号C(4)、姓名C(8)、基本工资N(7,2))

选项 A、SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ANY;    (SELECT 基本工资 FROM 职工 WHERE 部门号="11")
B、SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ALL;    (SELECT 基本工资 FROM 职工 WHERE 部门号="11")
C、SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ANY;    (SELECT MAX(基本工资) FROM 职工 WHERE 部门号="11")
D、SELECT DISTINCT 部门号 FROM 职工 WHERE 基本工资>=ALL;    (SELECT MIN(基本工资)  FROM 职工 WHERE 部门号="11")

答案2

解析 在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:
   <表达式><比较运算符>[ANY|ALL|SOME](子查询)
   其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有的行都符合条件,结果才成立。
   本题中要求检索有职工的基本工资大于或等于“11”部门中任意一名职工的工资的部门号,等价于其他部门职工的基本工资有大于或等于“11”部门中所有职工的工资,因此要使用ALL短语。选项C)和D)的属于语法错误,SQL不支持此类型查询。
转载请注明原文地址:https://kaotiyun.com/show/NMKZ777K
0

最新回复(0)