计算机二级

若有如下SQL语句 SELECT DISTINCT工资FROM教师; WHERE工资=(SELECT MAX(工资)FROM教师); INTO TABLE Result 执行该语句后,Result表中的记录个数是( )。A.1B.2C.3D.4

题目

若有如下SQL语句 SELECT DISTINCT工资FROM教师; WHERE工资=(SELECT MAX(工资)FROM教师); INTO TABLE Result 执行该语句后,Result表中的记录个数是( )。

A.1

B.2

C.3

D.4

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有教师表 ( 教师号 , 姓名 , 所在系 , 工资 ) , 找出系内教师平均工资高于全体教师平均工资的系信息 ,正确语句是

A )

SELECT 所在系 , AVG( 工资 ) FORM. 教师表

WHERE AVG( 工资 )>(SELECT AVG( 工资 ) FROM 教师表 )

B )

SELECT 所在系 , AVG( 工资 )FROM 教师表

WHERE AVG( 工资 )>(SELECT AVG( 工资 ) FROM 教师表 ) GROUP BY 所在系

C )

SELECT 所在系 , AVG( 工资 ) FROM 教师表

GROUP BY 所在系 HAVING AVG( 工资 )>(SELECT AVG( 工资 ) FROM 教师表 )

D )

SELECT 所在系 , AVG( 工资 ) FROM 教师表 GROUPBY 所在系

WHERE AVG( 工资 )>(SELECT AVG( 工资 ) FROM 教师表 )


正确答案:C

第2题:

有SQL语句: SELECT DISTINCT 系号 FROM 教师 WHERE工资>=; ALL(SELECT 工资 FROM 教师 WHERE 系号="02") 该语句的执行结果是系号

A.01和"02"

B.01和"03"

C.01和"04"

D.02和"03"


正确答案:A
解析:本题中的SQL语句的功能是在教师表中选择出所有满足查询条件记录的系号。其中查询条件工资>=ALL(SELECT工资FROM教师WHERE系号="02")表示所要查询的记录的工资字段要比那些所有系号为02的记录的工资字段要高,其实际含义是查询那些工资比02系工资都高的教师所在的系号,从原始数据表中可以发现只有第2、5、12条记录是满足条件的,它们的系号字段分别为01、02,故选项A为正确答案。

第3题:

有教师表(教师号,姓名,所在系,工资),找出系内教师平均工资高于全体教师平均工资的系信息,正确的语句是______。

A.SELECT所在系,AVG(工资)FROM教师表 WHERE AVG(工资)>(SELECT AVG(工资)FEOM教师表)

B.SELECT所在系,AVG(工资)FROM教师表 WHERE AVG(工资)>(SELECT AVG(工资)FEOM教师表) GROUP BY所在系

C.SELECT所在系,AVG(工资)FROM教师表 GROUP BY所在系 HAVING AVG(工资)>(SELECT AVG(工资)FEOM教师表)

D.SELECT所在系,AVG(工资)FROM教师表 GROUP BY所在系 WHERE AVG(工资)>(SELECT AVG(工资)FEOM教师表)


正确答案:C
解析:在分组查询中要用关键字GROUP,AVG()、SUM()等函数作为查询条件时,必须放在HAVING关键字后面,而不能用WHERE关键字。

第4题:

第下列各题使用如下数据。 部门(部门号C(2)、部门名称C(10)) 职工(部门号C(2)、职工号C(4)、姓名C(8)、基本工资 N(7,2)) 检索有职工的基本工资大于或等于“11”部门中任意一名职工工资的“部门号”,正确的语句是( )。

A.SELECT DISTINCT部门号FROM职711 WHERE基本工资>=ANY (SELECT基本工资FROM职工WHERE部门号一”ll”)

B.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ALL (SELECT基本工资FROM职工WHERE部门号 一”ll”)

C.SELECT DISTINCT部门号FROM职工WHERE基本工资>=ANY (SELECT MAX(基本工资)FROM职工WHERE部门号=”ll”)

D.SELECT DlSTINcT部门号FROM职工WHERE基本工资>=ALL (SELECT MIN(基本工资)FROM职工WHERE部 门号=”11”)


正确答案:B
B。【解析】在SQL语句中可以利用ANY、ALL等量词进行查询。基本格式为:<表达式><比较运算符>[ANYIALLISOME](子查询)其中,ANY(任意的)和SOME(一些)表示只要子查询中存在符合条件的行,结果就成立;而ALL(所有的)只有子查询中的所有行都符合条件,结果才成立。本题中要求检索有职工的基本工资大于或等于“ll”部门中任意一名职工的工资的部门号,等价于其他部门职工的基本工资有大于或等于“ll”部门中所有职工的工资,因此要使用ALL短语。选项C和D的属于语法错误,SQL不支持此类型查询。

第5题:

查找教师表中教师最高的工资值,下列SQL语句正确的是

A.SELECT MAX(工资) FROM 教师表

B.SELECT MIN(工资) FROM 教师表

C.SELECT AVG(工资) FROM 教师表

D.SELECT SUM(工资) FROM 教师表


正确答案:A
解析:SQL查询语句中,MAX用于求最大值,MIN用于求最小值,AVG用于求平均。

第6题:

有SQL语句: SELECT*FROM教师WHERENOT(工资>30000R工资<2000)与如上语句等价的SQL语句是

A.SELECT*FROM 教师 WHERE 工资 BETWEEN 2000 AND 3000

B.SELECT*FROM 教师 WHERE 工资>2000 AND工资<3000

C.SELECT*FROM 教师 WHERE 工资>2000 OR工资<3000

D.SELECT*FROM 教师 WHERE 工资<=2000 AND工资>3000


正确答案:A
解析:BETWEEN...AND...是SQL中比较特殊的函数,经常与SQL联合使用用来设定查询条件,这个函数所设定的查询条件是值在某个范围内,并且包含边界取值,题目中WHERE所设定的条件是NOT(工资>3000 AND工资2000),其含义不是在小于2000或大于3000的范围内,这恰好是在2000到3000之间,选项A使用BETWEEN...AND...设定查询条件,与此条件实现的功能一致。故选项A为正确答案。选项B表示工资大于2000并且小于3000,选项C表示工资大于2000或者工资小于3000,选项D表示工资小于等于2000并且大于等于3000。

第7题:

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

A.SELECT DISTINCT系号FROM教师WHERE工资>=; (SELECT MAX(工资)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系工资都高的教师所在的系号,四个选项中只有选项A中的查询条件与此等价,用(SELECT MAX(工资) FROM…WHERE…)实现选择出最高工资,故选项A为正确答案。选项B的查询条件表示工资大于02系中工资最低的教师的工资,选项C和D中的ANY和SOME是同义词,表示查询出只要比02系中某一个教师工资高的记录即可。

第8题:

有教师表(教师号,姓名,所在系,工资),找出系内教师平均工资高于全体教师平均工资的系,正确的语句是______。

A)SELECT所在系,AVG(工资)FROM教师表WHERE AVG(工资)>(SELECT AVG(工资)FROM教师表)

B)SELECT所在系,AVG(工资)FROM教师表WHERE AVG(工资)>(SELECT AVG(工资)FROM教师表)

GROUP BY所在系

C)SELECT所在系,AVG(工资)FROM教师表GROUP BY所在系

HAVING AVG(工资)>(SELECT AVG(工资)FROM教师表)

D)SELECT所在系,AVG(工资)FROM教师表GROUP BY所在系

WHERE AVG(工资)>(SELECT AVG(工资)FROM教师表)

A.

B.

C.

D.


正确答案:C

第9题:

有如下SQL语句:

SELECT DISTINCT 仓库号 FROM 职工表 WHERE 工资>=ALL;

(SELECT 工资 FROM 职工表 WHERE 仓库号="A1")

执行语句后,显示查询到的仓库号有

A.A1

B.A3

C.A1,A2

D.A1,A3


正确答案:D
解析:本题查询的是职工的工资大于或等于A1仓库中所有职工工资的仓库号。在SQL语句中可以使用ANY,ALL等量词进行查询。其中ANY在进行比较运算时,只要子查询中有一行能使结果为真,则结果就为真;而ALL则要求子查询中的所有行都使结果为真时,结果才为真。

第10题:

设教师表的结构为:(教师号、姓名、性别、职称、工资、所在系)。若要查询其他系中比计算机系所有教师工资都高的教师的姓名和工资,正确的SELECT语句是 ______。

A.SELECT姓名,工资FROM教师表WHERE工资>ANY(SELECT工资; FROM教师表WHERE所在系=“计算机”)AND所在系<>计算机

B. SELECT姓名,工资FROM教师表WHERE工资>(SELECT MIN(工资); FROM教师表WHERE所在系=“计算机”)AND所在系<>计算机

C. SELECT姓名,工资FROM教师表WHERE工资>ALL(SELECT工资; FROM教师表WHERE所在系=“计算机”)AND所在系<>计算机

D. SELECT姓名,工资FROM教师表WHERE工资>(SELECT MAX(工资); FROM教师表WHERE所在系=“计算机”AND所在系<>计算机)


正确答案:C
解析:本查询是基于教师表查询其他系中比计算机系所有教师工资都高的教师的姓名和工资,4个选项中都使用了子查询。选项A中子查询给出了计算机系所有教师的工资的集合,子查询前的量词ANY代表任意一个,AND前后是并列的条件,该语句查询的是非计算机系中工资大于计算机系任何一个教师的工资的教师的姓名和工资,或者说是查询非计算机系中工资比计算机系最低工资高的教师的姓名和工资,假如,计算机系教师的工资集合是(1500,1300,900),那么查询的是所有不是计算机系且工资高于900的教师,该选项不合题义。选项B中子查询使用了函数MIN求出了计算机系最低工资,查询的结果是找出非计算机系中工资比计算机系最低工资高的教师姓名和工资,同选项A一样,不合题义;选项C中子查询给出了计算机系所有教师的工资的集合,子查询前的量词ALL代表全部,该语句查询的是非计算机系中工资大于计算机系所有教师的工资的教师的姓名和工资,或者说是查询非计算机系中工资比计算机系最高工资都高的教师的姓名和工资,假如,计算机系教师的工资集合是(1500,1300,900),那么查询的是所有不是计算机系且工资高于1500的教师,该选项符合题义,是正确的。选项D中子查询使用了函数MAX求出了计算机系最高丁资,按题义应该是正确的,但是由于将并列条件“所在系>计算机”放在于查询之内,造成逻辑表达错误,因此也是错误。

更多相关问题