问题 单项选择题

第15~26题使用的数据表如下:
当前盘当前目录下有数据库:学院.dbc,其中有“教师”表和“学院”表。
“教师”表
职工号系号姓名工资主讲主课程
1102000101肖海3408数据结构
1102000202王岩盐4390数据结构
1102000301刘星魂2450C语言
1102000403张月新3200操作系统
1102000501李明玉4520数据结构
1102000602孙民山2976操作系统
1102000703钱无名2987数据库
1102000804呼延军3220编译原理
1102000903王小龙3980数据结构
11020001001张国梁2400C语言
11020001104林新月1800操作系统
11020001201乔小廷5400网络技术
11020001302周兴池3670数据库
11020001404欧阳秀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”系的教师最高工资,其他系中只要有教师工资高于此函数值,结果便为真。

名词解释
选择题