数据库sql课后练习题及答案解析(2)

2025-06-24

ORDER BY PRICE DESC

4) 查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OUTPUT)和单价(PRICE)升序排序。

SELECT SORT,OUTPUT,PRICE FROM BOOK WHERE PRICE BETWEEN 10 AND 20 ORDER BY OUTPUT ,PRICE

5) 查找书名以”计算机”开头的所有图书和作者(WRITER)。

SELECT BOOK_NAME,WRITER FROM BOOK WHERE BOOK_NAME LIKE '计算机%'

6) 检索同时借阅了总编号(BOOK_ID)为112266和449901两本书的借书证号(READER_ID)。

SELECT A.READER_ID FROM BORROW A,BORROW B WHERE A.BOOK_ID='112266' AND B.BOOK_ID='449901' AND A.READER_ID=B.READER_ID

##7)* 查找所有借了书的读者的姓名(NAME)及所在单位(COMPANY)。

SELECT DISTINCT NAME,COMPANY FROM READER,BORROW WHERE BORROW.READER_ID=READER.READER_ID

8)* 找出李某所借所有图书的书名及借书日期(BORROW_DATE)。

SELECT BOOK.BOOK_NAME,BORROW.BORROW_DATE FROM BOOK,BORROW,READER

WHERE BOOK.BOOK_ID=BORROW.BOOK_ID AND

READER.READER_ID=BORROW.READER_ID AND READER.NAME LIKE '李%'

9)* 无重复地查询2006年10月以后借书的读者借书证号(READER_ID)、姓名和单位。

SELECT READER_ID,NAME,COMPANY FROM READER

WHERE READER_ID IN (SELECT READER_ID FROM BORROW WHERE BORROW_DATE >='2006-10-1' )

##10)* 找出借阅了一书的借书证号。

SELECT DISTINCT READER_ID FROM BORROW,BOOK WHERE BORROW.BOOK_ID=BOOK.BOOK_ID AND BOOK.BOOK_NAME LIKE 'FoxPro大全'

11) 找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期 。

SELECT NAME,COMPANY,BORROW_DATE FROM READER,BORROW WHERE BORROW.READER_ID=READER.READER_ID

AND BORROW_DATE IN (SELECT BORROW_DATE FROM BORROW,READER WHERE BORROW.READER_ID=READER.READER_ID AND NAME='赵正义')

12) 查询2006年7月以后没有借书的读者借书证号、姓名及单位。

SELECT READER_ID,NAME,COMPANY FROM READER

WHERE READER_ID NOT IN (SELECT READER_ID FROM BORROW WHERE BORROW_DATE>='2006-7-1')

#13) 求”科学出版社”图书的最高单价、最低单价、平均单价。

SELECT MAX(PRICE) 最高单价,MIN(PRICE) 最低单价,AVG(PRICE) 平均单价 FROM BOOK

WHERE OUTPUT='科学出版社'

##14)* 求”信息系”当前借阅图书的读者人次数。

SELECT COUNT(DISTINCT READER_ID) 当前借阅图书的读者人次数FROM BORROW WHERE READER_ID IN (SELECT READER_ID FROM READER WHERE COMPANY IN ('信息系'))

#15) 求出各个出版社图书的最高价格、最低价格和总册数。

SELECT MAX(PRICE) 最高价格,MIN(PRICE) 最低价格,COUNT(PRICE) 总册数FROM BOOK

GROUP BY OUTPUT

#16) 分别找出各单位当前借阅图书的读者人数及所在单位。

SELECT COUNT(COMPANY) 读者人数,COMPANY FROM BORROW,READER WHERE BORROW.READER_ID=READER.READER_ID GROUP BY COMPANY

17)* 找出当前至少借阅了2本图书(大于等于2本)的读者姓名及其所在单位。

SELECT NAME 读者姓名,COMPANY 单位FROM READER

WHERE READER_ID IN (SELECT READER_ID FROM BORROW GROUP BY READER_ID HAVING COUNT(*)>=2 )

18) 分别找出借书人次数多于1人次的单位及人次数。

SELECT COMPANY,COUNT(*) 人次数 FROM READER,BORROW WHERE BORROW.READER_ID=READER.READER_ID GROUP BY COMPANY HAVING COUNT(*)>1

19) 找出藏书中各个出版单位的名称、每个出版社的书籍的总册数(每种可能有多册)、书的价值总额。

SELECT OUTPUT,COUNT(*) 书籍的总册数,SUM(PRICE) 书的价值总额 FROM BOOK

GROUP BY OUTPUT

20) 查询经济系是否还清所有图书。如果已经还清,显示该系所有读者的姓名、 所在单位和职称。

SELECT NAME,COMPANY FROM READER

WHERE NOT EXISTS (SELECT* FROM READER,BORROW

WHERE READER.READER_ID=BORROW.READER_ID AND COMPANY='经济系')


数据库sql课后练习题及答案解析(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:分离工程习题完整答案

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219