问题 单项选择题

求至少出版两本以上图书的作者姓名及数量,下列SQL语句正确的是( )。

A) SELECT 作者姓名,COUNT(*) AS 数量 FROM 图书,作者;
HAVING COUNT(*)>=2
B) SELECT 作者姓名,COUNT(*) AS 数量 FROM 图书,作者;
WHERE 作者.作者编号=图书.作者编号;
GROUP BY 图书.作者编号 HAVING COUNT(*)>=2
C) SELECT 作者姓名,COUNT(*) AS 数量 FROM 图书,作者;
WHERE 作者.作者编号=图书.作者编号;
GROUP BY 图书.作者编号 SET COUNT(*)>=2
D) SELECT 作者姓名,COUNT(*) AS 数量 FROM 图书,作者;
WHERE 作者.作者编号=图书.作者编号;AND COUNT(*)>=2;
GROIP BY 图书.作者编号

答案

参考答案:B

解析: 本题利用SQL分组查询的功能,查询至少出版2本以上图书的作者,需要利用HAVING子句可以对分组条件做进一步限定。选项A)中,没有对查询进行分组;选项C)中的SET短语错误,对分组条件做进一步限定,需要利用HAVING子句;选项D)中也存在语法错误,HAVING子句只能跟在GROUP BY短语后一起使用。

单项选择题
单项选择题