问答题 设有三个基本表,表的结构如下所示,请用SQL完成下列查询
BORROWER:
借书证号
姓名
系名
班级
98001
欧阳
信息系
98-1
98002
刘诚
信息系
98-1
98101
赵林
计算机系
98-2
LOANS:
借书证号
图书馆登记号
借书日期
98001
T00101
1999.04.01
98002
T00102
1999.05.01
09001
T00201
1999.05.31
BOOKS:
索书号
书号
作者
图书登记号
出版社
价格
TP311.13
数据库系统与应用
李昭原
T00101
科学
19.00
TP311.13
数据库原理与应用
李昭原
T00102
科学
19.00
TP.065
数据库系统原理
李昭原
T00201
北航
6.50
TP.1599
数据库原理教程
王珊
T00101
清华
18.50
①检索至少借了5本书的同学的借书证号、姓名、系名和借书数量
②检索借书和欧阳同学所借图书中的任意一本相同的学生姓名、系名、书名和借书日期
③建立信息系学生借书的视图SSP,该视图的属性列明由借书证号,姓名,班级,图书登记号,书名,出版社和借书日期组成
【正确答案】
【答案解析】①SELECT LOAN.借书证号,姓名,系名,COUT(*) AS借书数量
FROM BORROWER,LOANS
WHERE BORROW.借书证号=LOANS.借书证号
GROUP BY LOANS.借书证号
HAVING COUT(*)>5
②SELECT姓名,系名,书名,借书日期
FROM BORROWER,LOANS,BOOKS
WHERE BORROWER.借书证号=LOANS.借书证号 AND LOANS.图书登记号=BOOKS.图书登记号 AND索书号IN(SELECT索书号FROM BORROWER,LOANS,BOOKS
WHERE BORROW.借书证号=LOANS.借书证号 AND LOANS.图书登记号=BOOKS.图书登记号 AND姓名="欧阳");
③CREATE VIEW SSP
AS
SELECT BORROWER.借书证号,姓名,班级,LOANS.图书登记号,书名,出版社,借书日期
FROM BORROWER.借书证号=LOANS.借书证号 AND LOANS.图书登记号=BOOKS.图书登记号 AND系名="信息系";