单选题
以下各题使用如下的“作者”表和“图书”表。
作者 作者编号 作者姓名 所在城市
1001 王力 北京
1002 刘方 北京
1003 张剑 上海
1004 程红 上海
1005 张进 上海
图书 图书编号 书名 出版单位 价格 作者编号
0001 计算机应用 清华大学出版社 26.50 1001
0002 C++ 电子工业出版社 32.00 1001
0003 计算机基础知识电子工业出版社 28000 1002
0004 网络应用 清华大学出版社 24.50 1003
0005 数据库应用 清华大学出版社 26.00 1003
0006 数据库组成原理清华大学出版社 23.00 1003
0007 Java 电子工业出版社 27.50 1004
0008 网页设计 电子工业出版社 31.00 1004
单选题
有如下SQL语句:
SELECT 出版单位,MIN(价格) FROM 图书 GROUP BY 出版单位
查询结果中,第一条记录的值是( )。
【正确答案】
B
【答案解析】[解析] 本题考查了考生对SQL查询语名功能的掌握及作用。根据出版单位升序排序,第一条记录的出版单位为电子工业出版社,在该出版社中单价最低的图书价格为27.50,选项C为查询结果中的第二条记录。
单选题
查询北京作者出版的图书情况,要求包含作者姓名、书名和价格信息,并按图书价格降序排列,下列SQL语句正确的是( )。
【正确答案】
C
【答案解析】[解析] 本题的SQL语句的含义是通过作者表和图书表的内部联接查询符合条件的记录,注意表间关联字的选择,以及条件连接的逻辑运算符。使用ORDER BY短语可对查询结果排序,GROUP BY短语用来记录分组。
单选题
执行如下SQL语句:
SELECT DISTINCT 价格 FROM 图书;
WHERE 价格=(SELECT MAX(价格) FROM 图书) INTO ARRAY arr
arr[2]的结果是( )。
【正确答案】
D
【答案解析】[解析] 本题考查了考生对SQL嵌套查询及查询输出知识的理解及运用,由于查询结果只有一个图书价格的最大值,可以执行“?arr[2]”命令时,所求的数组下标超出范围,系统报错。
单选题
求至少出版两本以上图书的作者姓名及数量,下列SQL语句正确的是( )。
【正确答案】
B
【答案解析】[解析] 本题要求掌握HAVING子句的功能及作用,选项A中,没有对查询进行分组;选项C中的SET短语错误,对分组条件做进一步限定,需要HAVING子句;选项D中的也存在语法错误,HAVING子句只能跟在GROUP BY短语后一起使用。