问题
单项选择题
设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,检索当前至少借阅了5本图书的读者的姓名和职称。下面SQL语句正确的是______。
SELECT姓名,职称FROM读者WHERE借书证号IN;
A.(SELECT 借书证号 FROM 借阅 GROUP BY 总编号 HAVING COUNT(*)>=5)
B.(SELECT 借书证号 FROM 读者 GROUP BY 借书证号 HAVING COUNT(*)>=5)
C.(SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING SUM(*)>=5)
D.(SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING COUNT(*)>=5)
答案
参考答案:D
解析: 本题的要求是检索当前至少借阅了5本图书的读者的姓名和职称。因此在检索时需要按照读者进行分组,并且在每个组内需要保证至少借阅了5本书,因此该题目应该采用的SQL语句如下
SELECT 姓名,职称 FROM 读者 WHERE 借书证号 IN;
(SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING COUNT(*)>=5)
因此本题的正确选项应为D。