问题 单项选择题

第15~26题使用的数据表如下:
当前盘当前目录下有数据库:学院.dbc,其中有“教师”表和“学院”表。
“教师”表

职工号 系号 姓名 工资 主讲主课程
11020001 01 肖海 3408 数据结构
11020002 02 王岩盐 4390 数据结构
11020003 01 刘星魂 2450 C语言
11020004 03 张月新 3200 操作系统
11020005 01 李明玉 4520 数据结构
11020006 02 孙民山 2976 操作系统
11020007 03 钱无名 2987 数据库
11020008 04 呼延军 3220 编译原理
11020009 03 王小龙 3980 数据结构
110200010 01 张国梁 2400 C语言
110200011 04 林新月 1800 操作系统
110200012 01 乔小廷 5400 网络技术
110200013 02 周兴池 3670 数据库
110200014 04 欧阳秀 3345 编译原理
        “学院”表
系号 系名
01 计算机
02 通信
03 信息管理
04 数学

有SQL语句:
SELECT DISTINCT系号FROM教师WHERE工资>=;
ALL(SELECT工资FROM教师 WHERE系号="02")与如上语句等价的SQL语句是 ______。

A.SELECT DISTINCT系号FROM教师WHERE工资>=;
(SELECT MAXCE资)FROM教师WHERE系号="02")

B.SELECT DISTINCT系号FROM教师WHERE工资>=;
(SELECT MIN(工资)FROM教师WHERE系号="02")

C.SELECT DISTINCT系号FROM教师WHERE工资>=;
ANY(SELECT工资FROM教师WHERE系号="02")

D.SELECT DISTINCT系号FROM教师WHERE工资>=;
SOME(SELECT工资FROM教师WHERE系号="02")

答案

参考答案:A

解析: 本题SQL语句的含义是检索有教师工资大于或等于系号为“02”的所有教师工资的系号。ALL、ANY和SOME都是SQL语句中的量词,在进行比较运算时只要子查询中有一行能使结果为真,则结果为真,而ALL则要求子查询中的所有行都使结果为真时,结果才为真,因此在子查询中要使用MAX()函数求出“02”系的教师最高工资,其他系中只要有教师工资高于此函数值,结果便为真。

配伍题 B型题
单项选择题