3.1 查询1991年出生的读者姓名、工作单位和身份证号。
SELECT readerName,workUnit,identitycard
FROM Reader
WHERE SUBSTRING(identitycard,7,4) =‘1991’
3.2 查询图书名中含有“数据库”的图书的详细信息。
SELECT *
FROM Book
WHERE bookName LIKE ‘%数据库%’
3.3 查询在2015-2016年之间入库的图书编号、出版时间、入库时间和图书名称,并按入库时间降序排序输出。
SELECT bookNo,bookName,publishingDate,shopDate
FROM Book
WHERE YEAR(shopDate) BETWEEN 2015 AND 2016
ORDER BY shopDate DESC
3.4 查询读者“喻自强”借阅的图书编号、图书名称、借书日期和归还日期。
SELECT Book.bookNo,bookName,borrowDate,returnDate
FROM Book,Borrow
WHERE Book.bookNo=Borrow.bookNo AND readerNo IN(
SELECT readerNo
FROM Reader
WHERE readerName=‘喻自强’ )
3.5 查询借阅了清华大学出版社出版的图书的读者编号、读者姓名、图书名称、借书日期和归还日期。
SELECT Reader.readerNo,readerName,bookName,borrowDate,returnDate
FROM Reader,Borrow,Book,Publisher
WHERE Reader.readerNo=Borrow.readerNo AND Borrow.bookNo=Book.bookNo
AND Publisher. PublisherNo= Book. PublisherNo AND publisherName=‘清华大学出版社’
3.6 查询上海生物研究室没有归还所借图书的读者编号、读者姓名、图书名称、借书日期和应归还日期。
SELECT Reader.readerNo,readerName,bookName,borrowDate,shouldDate
FROM Reader,Borrow,Book
WHERE Reader.readerNo=Borrow.readerNo AND Borrow.bookNo=Book.bookNo
AND workUnit=‘上海生物研究室’ AND returnDate IS NULL
3.7 查询在2015-2016年之间借阅但没有归还图书的读者编号、读者姓名、读者工作单位以及这些借阅未归还图书的图书编号、图书名称和借书日期(分别使用IN子查询和存在量词子查询表达)。
SELECT a.readerNo,readerName,workUnit,c.bookNo,bookName, borrowDate
FROM Reader a,Borrow b,Book c
WHERE a.readerNo=b.readerNo AND b.bookNo=c.bookNo AND returnDate IS NULL AND a.readerNO IN(
SELECT readerNo
FROM Borrow
数据库系统原理与设计(万常选)第三版 第3章第7章习题答案
最新推荐文章于 2021-03-26 00:00:59 发布