生态农庄网站建设,wordpress acction,wordpress网站地图百度插件,python写网页任务描述
本关任务#xff1a;查询来自借阅、图书、读者数据表的数据 为了完成本关任务#xff0c;你需要掌握#xff1a;
如何多表查询
相关知识
查询多个数据表
在实际应用中#xff0c;查询经常会涉及到几个数据表。 基于多个相关联的数据表进行的查询称为连接查询…任务描述
本关任务查询来自借阅、图书、读者数据表的数据 为了完成本关任务你需要掌握
如何多表查询
相关知识
查询多个数据表
在实际应用中查询经常会涉及到几个数据表。 基于多个相关联的数据表进行的查询称为连接查询。
命令格式 select * from 数据表 from 数据表1数据表2 where 连接条件
对于连接查询在FROM短语后多个数据表的名称之间用逗号隔开在WHERE短语中须指定数据表之间进行连接的条件 在连接查询中引用两个表的公共字段时必须在字段前添加表名作为前缀否则系统会提示出错。 对于只在一个数据表中出现的字段则无需指定前缀。
第二种方法 from 数据表1 join 数据表2 on 连接条件 数据表1和数据表2为需要连接的数据表 on后面是连接的条件 通常是关键字段的值相同
三个表的查询 如果要实现三个表的查询可以 From 数据表1 ,数据表2 ,数据表3 where 连接条件1 and 连接条件2
任务要求
打开library数据库 第一题 根据读者(reader)和借阅(borrow)数据表查询王颖珊的借阅记录包括条形码txm、借阅日期jyrq、还书日期hsrq 第二题 根据图书(book)和借阅(borrow)数据表查询李白全集被借阅的情况包括读者证号dzzh、借阅日期jyrq、还书日期hsrq 第三题 根据读者(reader)、图书(book)和借阅(borrow)数据表查询没有被归还的借阅信息包括读者证号dzzh、姓名xm、电话dhhm、条形码txm、书名sm、借阅日期jyrq 提示通过isnull(表达式)可以判断表达式是否NULL值 开始你的任务吧祝你成功
use library;
#第一题select txm,jyrq,hsrq from borrow join reader on reader.dzzhborrow.dzzh where xm王颖珊;#第二题select dzzh,jyrq,hsrq from borrow join book on borrow.txmbook.txm where sm李白全集;#第三题select reader.dzzh,xm,dhhm,book.txm,sm,jyrq from book join borrow on borrow.txmbook.txm join reader on borrow.dzzhreader.dzzh where ISNULL(hsrq);#代码结束
任务描述
任务 根据数据表图书、读者和借阅实现多表查询及对查询分组统计
为了完成本关任务你需要掌握 第一题 统计每本书借阅的次数,显示书名和借阅次数借阅次数命名为jycs),按借阅次数降序排列,借阅次数相同的按书名降序排列 提示borrow数据表的一条数据对应一次借阅 第二题 统计借阅次数在2次以上的图书的借阅的次数,显示书名和借阅次数按借阅次数降序排列,借阅次数相同的按书名降序排列 第三题 统计每个出版社的图书的借阅次数,显示出版社的名称和借阅次数按借阅次数降序排列,借阅次数相同的按出版社降序排列 第四题 统计每位读者借阅的次数,显示姓名和借阅次数,按借阅次数降序排列借阅次数相同的按姓名降序排列 第五题 统计研究生读者借阅的次数,显示姓名和借阅次数按借阅次数降序排列借阅次数相同的按姓名降序排列 注意order by 表达式1,表达式2 表示首先按第一个表达式的值排序第一个表达式的值相同的再按第二个表达式的值排序
use library;#代码开始#第一题
select sm,count(sm)as jycs from borrow left join book on book.txmborrow.txm
group by sm
order by jycs desc,sm desc;#第二题
select sm,count(sm) as jycs from borrow left join book on book.txmborrow.txm
group by sm having(jycs2)
order by jycs desc,sm desc;#第三题
select cbs,count(cbs) as jycs from borrow left join book on book.txmborrow.txm
group by cbs
order by jycs desc,cbs desc;#第四题
select xm,count(xm)jycs from borrow left join reader on borrow.dzzhreader.dzzh
group by xm
order by jycs desc,xm desc;#第五题select xm,count(xm) as jycs from borrow left join reader on borrow.dzzhreader.dzzh
where sf研究生
group by xm
order by jycs desc,xm desc;#代码结束
任务描述
本关任务根据图书数据表进行子查询
相关知识
为了完成本关任务你需要掌握子查询
子查询
在SELECT语句中一个查询语句完全嵌套在另一个查询语句的WHERE或HAVING的条件短语中称为子查询或嵌套查询。 通常把条件短语中的查询成为子查询父查询则使用子查询的查询结果作为查询条件。
任务要求
第一题 查询与李白全集同一个出版社的图书的书名不包括李白全集 第二题 查询高于图书的平均售价(sj)的图书的书名和售价 第三题 查询售价最高的图书的条形码、书名和售价 第四题 查询售价最低的图书的条形码、书名和售价 开始你的任务吧祝你成功
use library;
#代码开始
#答案1
select sm from book where cbs上海古籍出版社 and sm!李白全集;
#答案2
select sm,sj from book where sj(select avg(sj) from book);
#答案2
select txm,sm,sj from book where sj(select max(sj) from book);#答案3
select txm,sm,sj from book where sj(select min(sj) from book);#代码结束
任务描述
本关任务 第一题 查询曾经借过图书的读者的读者证号和姓名 第二题 查询曾经没有被借阅的图书的条形码和书名 第三题 查询与孙思旺借过相同图书的读者的读者证号和姓名按读者证号升序排列 第四题 查询借阅过李白全集的读者所借过的其他图书的书名 按书名升序排列
开始你的任务吧祝你成功 use library;
#代码开始
#题目1
select dzzh,xm from reader where reader.dzzh in (select dzzh from borrow);
#题目2
select txm,sm from book where book.txm not in (select txm from borrow);#题目3
select dzzh,xm from reader where reader.dzzh in (select dzzh from borrow
where txm in (select txm from borrow
where borrow.dzzh(select dzzh from reader
where xm孙思旺)))
and dzzh!006 order by dzzh asc;#题目4select sm from book where book.txm in (select txm from borrow
where borrow.dzzh in (select dzzh from borrow
where borrow.txm(select txm from book where sm李白全集)))
and sm!李白全集 order by sm asc;#代码结束