news 2026/6/6 14:05:15

SQL刷题笔记-我没做出来的题目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL刷题笔记-我没做出来的题目

构建数据集

DROP TABLE IF EXISTS `book`; CREATE TABLE `book` ( `总编号` INT(11) NOT NULL, `分类号` VARCHAR(255) DEFAULT NULL, `书名` VARCHAR(255) DEFAULT NULL, `作者` VARCHAR(255) DEFAULT NULL, `出版单位` VARCHAR(255) DEFAULT NULL, `单价` DOUBLE DEFAULT NULL, PRIMARY KEY (`总编号`) ) ENGINE=INNODB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of book -- ---------------------------- INSERT INTO `book` VALUES ('112266', 'TP3/12', 'FoxBASE', '张三', '电子工业出版社', '23.6'); INSERT INTO `book` VALUES ('113388', 'TR7/90', '大学英语', '胡玲', '清华大学出版社', '12.5'); INSERT INTO `book` VALUES ('114455', 'TR9/12', '线性代数', '孙业', '北京大学出版社', '20.8'); INSERT INTO `book` VALUES ('118801', 'TP4/15', '计算机网络', '黄力钧', '高等教育出版社', '21.8'); INSERT INTO `book` VALUES ('118802', 'TP4/15', '计算机网络', '黄力钧', '高等教育出版社', '21.8'); INSERT INTO `book` VALUES ('332211', 'TP5/10', '计算机基础', '李伟', '高等教育出版社', '18'); INSERT INTO `book` VALUES ('445501', 'TP3/12', '数据库导论', '王强', '科学出版社', '17.9'); INSERT INTO `book` VALUES ('445502', 'TP3/12', '数据库导论', '王强', '科学出版社', '17.9'); INSERT INTO `book` VALUES ('445503', 'TP3/12', '数据库导论', '王强', '科学出版社', '17.9'); INSERT INTO `book` VALUES ('446601', 'TP4/13', '数据库基础', '马凌云', '人民邮电出版社', '22.5'); INSERT INTO `book` VALUES ('446602', 'TP4/13', '数据库基础', '马凌云', '人民邮电出版社', '22.5'); INSERT INTO `book` VALUES ('446603', 'TP4/13', '数据库基础', '马凌云', '人民邮电出版社', '22.5'); INSERT INTO `book` VALUES ('449901', 'TP4/14', 'FoxPro大全', '周虹', '科学出版社', '32.7'); INSERT INTO `book` VALUES ('449902', 'TP4/14', 'FoxPro大全', '周虹', '科学出版社', '32.7'); INSERT INTO `book` VALUES ('665544', 'TS7/21', '高等数学', '刘明', '高等教育出版社', '20'); -- ---------------------------- -- Table structure for borrow -- ---------------------------- DROP TABLE IF EXISTS `borrow`; CREATE TABLE `borrow` ( `借书证号` VARCHAR(50) NOT NULL, `总编号` VARCHAR(50) DEFAULT NULL, `借书日期` DATETIME DEFAULT NULL ) ENGINE=INNODB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of borrow -- ---------------------------- INSERT INTO `borrow` VALUES ('112', '445501', '1997-03-19 00:00:00'); INSERT INTO `borrow` VALUES ('125', '332211', '1997-02-12 00:00:00'); INSERT INTO `borrow` VALUES ('111', '445503', '1997-08-21 00:00:00'); INSERT INTO `borrow` VALUES ('112', '112266', '1997-03-14 00:00:00'); INSERT INTO `borrow` VALUES ('114', '665544', '1997-10-21 00:00:00'); INSERT INTO `borrow` VALUES ('120', '114455', '1997-11-02 00:00:00'); INSERT INTO `borrow` VALUES ('120', '118801', '1997-10-18 00:00:00'); INSERT INTO `borrow` VALUES ('119', '446603', '1997-12-12 00:00:00'); INSERT INTO `borrow` VALUES ('112', '449901', '1997-10-23 00:00:00'); INSERT INTO `borrow` VALUES ('115', '449902', '1997-08-21 00:00:00'); INSERT INTO `borrow` VALUES ('118', '118801', '1997-09-10 00:00:00'); -- ---------------------------- -- Table structure for reader -- ---------------------------- DROP TABLE IF EXISTS `reader`; CREATE TABLE `reader` ( `借书证号` VARCHAR(255) DEFAULT NULL, `单位` VARCHAR(255) DEFAULT NULL, `姓名` VARCHAR(255) DEFAULT NULL, `性别` VARCHAR(255) DEFAULT NULL, `职称` VARCHAR(255) DEFAULT NULL, `地址` VARCHAR(255) DEFAULT NULL ) ENGINE=INNODB DEFAULT CHARSET=utf8; 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');

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

我当时的解题思路,没做出来

-- !!!不会!!! SELECT * FROM borrow b WHERE b.`借书日期`>='1997-07-01'; SELECT * FROM reader r LEFT JOIN borrow b ON r.`借书证号`=b.`借书证号` WHERE b.`借书日期`<'1997-07-01'; -- 1你取>1997-07-01出来的全是借过书的人,完全违背了条件。你取<1997-07-01的话, -- 2那如果取1997-07-01之前的话,如果07-01之前借了,之后借不借也没限制到。 -- 3如果取 IS NULL的话,那全是自始至终没借过书的人 -- 我是想用reader表left join,取为null的

老师的答案

SELECT r.`借书证号`, r.`姓名`, r.`单位` FROM reader r WHERE r.`借书证号` NOT IN ( SELECT w.`借书证号` FROM borrow w WHERE w.`借书日期` >='1997-07-01');

把借过书的人挑出来,不在这里的,其他剩余的留下。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/4 23:00:37

xv6与opensbi的定时器中断

在实现了第一个系统调用myHelloWorld、虚存管理后&#xff0c;为了实现能够做到分时系统的进程管理&#xff0c;我们需要启用定时器中断。 寄存器 为了实现定时器中断&#xff0c;你需要知道(牢记)如下寄存器&#xff0c;这些寄存器是你在处理定时器中断时特别关心的。 scau…

作者头像 李华
网站建设 2026/6/6 9:56:56

Code Surfer终极指南:让代码演示生动起来的完整教程

Code Surfer终极指南&#xff1a;让代码演示生动起来的完整教程 【免费下载链接】code-surfer Rad code slides <&#x1f3c4;/> 项目地址: https://gitcode.com/gh_mirrors/co/code-surfer 还在为枯燥的代码演示而烦恼吗&#xff1f;&#x1f914; 想要让你的技…

作者头像 李华
网站建设 2026/6/6 2:18:39

统计接口耗时的6种常见方法

为什么统计接口耗时如此重要&#xff1f;在深入方法之前&#xff0c;我们先聊聊为什么接口耗时统计这么关键。从架构师的角度看&#xff0c;这不仅仅是“记录一个时间”那么简单。接口耗时直接反映了系统性能&#xff0c;它是&#xff1a;性能优化的基石&#xff1a;没有耗时数…

作者头像 李华
网站建设 2026/6/6 10:44:03

最新版!Python从入门到全栈开发的保姆级路线图

作为一名软件测试工程师&#xff0c;掌握一门高效、灵活的编程语言对职业发展至关重要。Python 因其简洁的语法、强大的生态和广泛的应用场景&#xff0c;成为测试人员进阶自动化测试、性能测试乃至全栈开发的首选语言。 一、为什么测试工程师必须学 Python&#xff1f; ‌自动…

作者头像 李华
网站建设 2026/6/6 10:31:58

从零到一:用LangChain + Ollama搭建你的专属本地知识库

一、为何测试工程师需要本地知识库&#xff1f; 软件测试过程中产生的文档&#xff08;如测试用例、需求说明书、缺陷报告&#xff09;通常分散在多个平台&#xff0c;导致知识复用困难。通过本地知识库可实现&#xff1a; 隐私保障&#xff1a;敏感测试数据无需上传云端&…

作者头像 李华
网站建设 2026/6/5 15:22:20

路由器的5G和手机上的5G是一个意思吗?深度解析两大区别

5G这个词&#xff0c;它既出现在路由器的宣传中&#xff0c;也贯穿于手机的标志上。那这两个5G是相同的吗&#xff1f;本文将带你深入了解。本质上的不同尽管名称相似&#xff0c;但这两是完全不同的两种技术。手机上的5G指的是第五代移动通信技术&#xff0c;是继4G之后的下一…

作者头像 李华