数据库sql课后练习题及答案解析.doc_第1页
数据库sql课后练习题及答案解析.doc_第2页
数据库sql课后练习题及答案解析.doc_第3页
数据库sql课后练习题及答案解析.doc_第4页
数据库sql课后练习题及答案解析.doc_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

先创建下面三个表: (book表) (borrow表) (reader表)1)找出姓李的读者姓名(NAME)和所在单位(COMPANY)。2)列出图书库中所有藏书的书名(BOOK_NAME)及出版单位(OUTPUT)。3)查找“高等教育出版社”的所有图书名称(BOOK_NAME)及单价(PRICE),结果按单价降序排序。4)查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OUTPUT)和单价(PRICE)升序排序。5)查找书名以”计算机”开头的所有图书和作者(WRITER)。6)检索同时借阅了总编号(BOOK_ID)为112266和449901两本书的借书证号(READER_ID)。#7)*查找所有借了书的读者的姓名(NAME)及所在单位(COMPANY)。8)*找出李某所借所有图书的书名及借书日期(BORROW_DATE)。9)*无重复地查询2006年10月以后借书的读者借书证号(READER_ID)、姓名和单位。#10)*找出借阅了一书的借书证号。11)找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期 。12)查询2006年7月以后没有借书的读者借书证号、姓名及单位。#13)求”科学出版社”图书的最高单价、最低单价、平均单价。#14)*求”信息系”当前借阅图书的读者人次数。#15)求出各个出版社图书的最高价格、最低价格和总册数。#16)分别找出各单位当前借阅图书的读者人数及所在单位。17)*找出当前至少借阅了2本图书(大于等于2本)的读者姓名及其所在单位。18)分别找出借书人次数多于1人次的单位及人次数。19)找出藏书中各个出版单位的名称、每个出版社的书籍的总册数(每种可能有多册)、书的价值总额。20)查询经济系是否还清所有图书。如果已经还清,显示该系所有读者的姓名、所在单位和职称。附录:建表语句创建图书管理库的图书、读者和借阅三个基本表的表结构:创建BOOK:(图书表)CREATE TABLE BOOK ( BOOK_ID int, SORT VARCHAR(10), BOOK_NAME VARCHAR(50), WRITER VARCHAR(10), OUTPUT VARCHAR(50), PRICE int);创建READER:(读者表)CREATE TABLE READER (READER_ID int,COMPANY VARCHAR(10),NAME VARCHAR(10),SEX VARCHAR(2),GRADE VARCHAR(10),ADDR VARCHAR(50);创建BORROW:(借阅表)CREATE TABLE BORROW ( READER_ID int, BOOK_ID int, BORROW_DATE datetime)插入数据:BOOK表:insert into BOOK values(445501,TP3/12,数据库导论,王强,科学出版社,17.90);insert into BOOK values(445502,TP3/12,数据库导论,王强,科学出版社,17.90);insert into BOOK values(445503,TP3/12,数据库导论,王强,科学出版社,17.90);insert into BOOK values(332211,TP5/10,计算机基础,李伟,高等教育出版社,18.00);insert into BOOK values(112266,TP3/12,FoxBASE,张三,电子工业出版社,23.60);insert into BOOK values(665544,TS7/21,高等数学,刘明,高等教育出版社,20.00);insert into BOOK values(114455,TR9/12,线性代数,孙业,北京大学出版社,20.80);insert into BOOK values(113388,TR7/90,大学英语,胡玲,清华大学出版社,12.50);insert into BOOK values(446601,TP4/13,数据库基础,马凌云,人民邮电出版社,22.50);insert into BOOK values(446602,TP4/13,数据库基础,马凌云,人民邮电出版社,22.50);insert into BOOK values(446603,TP4/13,数据库基础,马凌云,人民邮电出版社,22.50);insert into BOOK values(449901,TP4/14,FoxPro大全,周虹,科学出版社,32.70);insert into BOOK values(449902,TP4/14,FoxPro大全,周虹,科学出版社,32.70);insert into BOOK values(118801,TP4/15,计算机网络,黄力钧,高等教育出版社,21.80);insert into BOOK values(118802,TP4/15,计算机网络,黄力钧,高等教育出版社,21.80);READER表:insert into reader values(111,信息系,王维利,女,教授,1号楼424);insert into reader values(112,财会系,李 立,男,副教授,2号楼316);insert into reader values(113,经济系,张 三,男,讲师,3号楼105);insert into reader values(114,信息系,周华发,男,讲师,1号楼316);insert into reader values(115,信息系,赵正义,男,工程师,1号楼224);insert into reader values(116,信息系,李 明,男,副教授,1号楼318);insert into reader values(117,计算机系,李小峰,男,助教,1号楼214);insert into reader values(118,计算机系,许鹏飞,男,助工,1号楼216);insert into reader values(119,计算机系,刘大龙,男,教授,1号楼318);insert into reader values(120,国际贸易,李 雪,男,副教授,4号楼506);insert into reader values(121,国际贸易,李 爽,女,讲师,4号楼510);insert into reader values(122,国际贸易,王 纯,女,讲师,4号楼512);insert into reader values(123,财会系,沈小霞,女,助教,2号楼202);insert into reader values(124,财会系,朱 海,男,讲师,2号楼210);insert into reader values(125,财会系,马英明,男,副教授,2号楼212);BORROW表:insert into borrow values(112,445501,3-19-2006);insert into borrow values(125,332211,2-12-2006);insert into borrow values(111,445503,8-21-2006);insert into borrow values(112,112266,3-14-2006);insert into borrow values(114,665544,10-21-2006);insert into borrow values(120,114455,11-2-2006);insert into borrow values(120,118801,10-18-2006);insert into borrow values(119,446603,11-12-2006);insert into borrow values(112,449901,10-23-2006);insert into borrow values(115,449902,8-21-2006);insert into borrow values(118,118801,9-10-2006);现有关系数据库如下: 数据库名:图书借阅管理系统读者表(读者编号 char(6),姓名,性别,年龄,单位,身份证号,职称) 图书表(图书编号char(6),图书名称,出版社,作者) 借阅表(读者编号,图书编号,借阅时间) 用SQL语言实现下列功能的sql语句代码。(1) 创建数据表book; book表(图书编号 char(6),图书名称,出版社,作者) 要求使用:主键(图书编号)、非空(图书名称),非空(作者)(2)创建数据表reader表; 学生信息表(reader编号 char(8),姓名,性别,年龄,工作单位,身份证号,职称) 要求使用:主键(reader编号)、默认(职称)、非空(工作单位,姓名)、唯一(身份证号)、检查(性别),检查(年龄)(3)创建借书表borrow; borrow (ID,读者编号,图书编号,借书日期) 要求使用:外键(学号,课号) (4)将下列课程信息添加到book表的代码 图书编号 名称 100101 数据库原理 100102 数据结构 修改 课号为100102的图书名称:数据结构与算法 删除 课号为100101的图书信息 (5)创建视图读者借书信息的代码; 读者借书信息视图(读者编号,姓名,图书编号,图书名称,借书日期)(6)从读者表book中查询姓李的女读者的情况:姓名、性别、工作单位。(7)查询统计出借书量超过5本的单位平均年龄(8)创建带参数的存储过程借某图书的读者高低均年龄、执行该过程的代码 存储过程功能:查询借阅某图书的的读者最高年龄、最低年龄、平均年龄; 执行该过程,查询所有借阅数据库基础这本书的读者的最高年龄、最低年龄、平均年龄;1)找出姓李的读者姓名(NAME)和所在单位(COMPANY)。SELECT NAME,COMPANY FROM READER WHERE NAME LIKE 李%2)列出图书库中所有藏书的书名(BOOK_NAME)及出版单位(OUTPUT)。SELECT BOOK_NAME, OUTPUT FROM BOOK 3)查找“高等教育出版社”的所有图书名称(BOOK_NAME)及单价(PRICE),结果按单价降序排序。SELECT BOOK_NAME,PRICE FROM BOOK WHERE OUTPUT=高等教育出版社 ORDER BY PRICE DESC4)查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OUTPUT)和单价(PRICE)升序排序。SELECT SORT,OUTPUT,PRICE FROM BOOKWHERE PRICE BETWEEN 10 AND 20ORDER 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,BORROWWHERE BORROW.READER_ID=READER.READER_ID8)*找出李某所借所有图书的书名及借书日期(BORROW_DATE)。SELECT BOOK.BOOK_NAME,BORROW.BORROW_DATE FROM BOOK,BORROW,READERWHERE 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 READERWHERE READER_ID IN (SELECT READER_ID FROM BORROW WHERE BORROW_DATE =2006-10-1 )#10)*找出借阅了一书的借书证号。SELECT DISTINCT READER_ID FROM BORROW,BOOKWHERE BORROW.BOOK_ID=BOOK.BOOK_ID AND BOOK.BOOK_NAME LIKE FoxPro大全11) 找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期 。SELECT NAME,COMPANY,BORROW_DATE FROM READER,BORROWWHERE 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 READERWHERE 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 BORROWWHERE READER_ID IN (SELECT READER_ID FROM READER WHERE COMPANY IN (信息系)#15)求出各个出版社图书的最高价格、最低价格和总册数。SELECT MAX(PRICE) 最高价格,MIN(PRICE) 最低价格,COUNT(PRICE) 总册数FROM BOOKGROUP BY OUTPUT#16)分别找出各单位当前借阅图书的读者人数及所在单位。SELECT COUNT(COMPANY) 读

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论