单选题
(31)~(35)题使用如下表的数据:
部门表
部门号
部门名称
40
家有电器部
10
电视录摄像机部
20
电话手机部
30
计算机部
商品表
部门号
商品号
商品名称
单价
数量
产地
40
0101
A牌电网扇
200.00
10
广东
40
0104
A牌微波炉
350.00
10
广东
40
0105
B牌微波炉
600.00
10
广东
20
1032
C牌传真机
1000.00
20
上海
40
0107
D牌微波炉_A
420.00
10
北京
20
0110
A牌电话机
200.00
50
广东
20
0112
B牌手机
2000.00
10
广东
40
0202
A牌电冰箱
3000.00
2
广东
30
1041
B牌计算机
6000.00
10
广东
30
0204
C牌计算机
10000.00
10
上海
单选题 SQL语句SELECT部门号,MAX(单价*数量)FROM商品表GROUP BY部门号 查询结果有几条记录?
【正确答案】 C
【答案解析】[解析] 本题中SQL语句的功能是:在商品表中按部门号进行分组,分组后从每个组中查询出单价和数量乘积最大的记录,从原始表中可以看出,表中有3个部门号,所以该SQL执行后应该有3条记录,正确选项为C。
单选题 SQL语句 SELECT产地,COUNT(*)提供的商品种类数; FROM商品表; WHERE单价>200; GROUP BY产地HAVING COUNT(*)>=2; ORDER BY 2 DESC 查询结果的第一条记录的产地和提供的商品种类数是
【正确答案】 C
【答案解析】[解析] 题目中所写出的SQL语句的功能是:在商品表中查询那些提供的商品单价大于200元,并且提供两种以上商品的产地,并按照提供的商品种类数降序排列,从原始数据表中可以计算出,满足条件的记录为产地为广东,商品种类个数为5,选项C正确。
单选题 SQL语句 SELECT部门表.部门号,部门名称,SUM(单价*数量); FROM 部门表,商品表; WHERE 部门表.部门号=商品表.部门号; GROUP BY 部门表.部门号 查询结果是
【正确答案】 B
【答案解析】[解析] 该语句利用SUM()函数在商品表中查询各部门商品的金额合计,该题涉及多表查询,其执行过程是,从部门表中选取部门号和部门名称以及单价和数量字段,乘积后求和,查询出的记录同时要满足部门号字段和商品表中的部门号相等。GROUP BY后的分组字段是部门号,因此它计算的是各个部门商品金额的合计。
单选题 SQL语句 SELECT 部门表.部门号,部门名称,商品号,商品名称,单价; FROM 部门表,商品表; WHERE 部门表.部门号=商品表.部门号; ORDER BY 部门表.部门号 DESC,单价 查询结果的第一条记录的商品号是
【正确答案】 A
【答案解析】[解析] 该SELECT语句的功能是在部门表和商品表两个表中查询,利用SUM()函数在商品表中查询各部门商品金额合计,并将结果按照部门表中的部门号降序排列,单价字段作为排序的次关键字。因此,所选出记录的商品号应该是0101,选项A是正确答案。
单选题 SQL语句 SELECT 部门名称 FROM 部门表 WHERE 部门号 IN (SELECT部门号, FROM 商品表 WHERE 单价 BETWEEN 420 AND 1000) 查询结果是
【正确答案】 A
【答案解析】[解析] 该语句的执行过程是,首先在内层查询中查找哪个部门的商品单价在420元和1000元之间,并检索出部门号,然后,在外层查询在部门表中,查找出与之对应的部门名称,因此选项A正确。