sql第二次上机作业

news2024/9/23 7:33:23

1查找借阅了ISBN为“4-6045-1023-4”的借书证号,读者姓名,专业名和借书时间

use tsgl
go
select Reader.Lno,Rname,Spec,Lend.Bordate
FROM Reader,Lend
WHERE Reader.Lno=Lend.Lno AND ISBN = '4-6045-1023-4'

在这里插入图片描述
2查找借阅了《数据库原理》一书的借阅信息,结果显示借书证号,读者姓名,专业名,借书时间(要求用WHERE方法实现)

use tsgl
go
select Reader.Lno,Rname,Spec,Lend.Bordate
FROM Reader,Lend,Book
WHERE Reader.Lno=Lend.Lno AND Lend.ISBN = Book.ISBN AND Bname = '数据库原理'

在这里插入图片描述
3查询读者的借阅信息,显示借书证号、姓名、专业名、ISBN、书名、借书时间,并按借阅时间降序排序(要求用JOIN方法实现)

USE tsgl
GO
SELECT Reader.Lno, Rname, Spec, Lend.ISBN, Bname, Lend.Bordate
FROM Reader 
INNER JOIN Lend ON Reader.Lno = Lend.Lno 
INNER JOIN Book ON Lend.ISBN = Book.ISBN 
ORDER BY Lend.Bordate DESC

在这里插入图片描述
4从Lend表中查询至少被两名同学借阅的图书,显示ISBN号、书名、和借阅人数。

USE tsgl
GO
SELECT Lend.ISBN, Bname, count(Lend.Lno) AS 借阅人数
FROM Lend JOIN Book
	ON Lend.ISBN=Book.ISBN
GROUP BY Lend.ISBN ,Book.Bname Having count(Lend.Lno)>=2

在这里插入图片描述
5 查询与“王朋”同一专业的读者信息

USE tsgl
GO
SELECT *
FROM Reader
WHERE Dept = (
	SELECT Dept
	FROM Reader
	WHERE Rname = '王朋'
)

在这里插入图片描述
如果已知王朋是哪个系

USE tsgl
GO
SELECT *
FROM Reader
WHERE Dept = '计算机系'

在这里插入图片描述
结果是一样的
6 查询从来没有借阅过图书的学生信息

USE tsgl
GO
SELECT *
FROM Reader
WHERE Lno NOT IN(
	SELECT DISTINCT Lno
	FROM Lend
	WHERE Lno IS NOT NULL
)

在这里插入图片描述
一开始我写的没有让Lend里的Lno不等于NULL时查询出来的是空我很纳闷

USE tsgl
GO
SELECT *
FROM Reader
WHERE Lno NOT IN(
	SELECT DISTINCT Lno
	FROM Lend
)

在这里插入图片描述
然后问gpt说可能我的Lno 存在空值:如果 Reader 表或 Lend 表中的 Lno 列中存在 NULL 值,则导致该查询无法正确匹配,结果集为空。您可以使用 IS NOT NULL 运算符或 INNER JOIN 语句的方式规避这个问题。
于是我查了一下Lend的Lno发现真的存在NULL值我也不知道为什么!!!
在这里插入图片描述
7 查询没有借书未还的读者信息(利用Lend和Reader表的外连接实现查询)

USE tsgl
GO
SELECT *
FROM Reader FULL JOIN Lend ON Reader.Lno = Lend.Lno
WHERE Lend.Lno IS NULL

在这里插入图片描述
第七题有点儿不懂可能写的不对hhh
8 查询曾借阅了同一种图书的所有读者对

USE tsgl
GO
SELECT L1.Lno, L2.Lno
FROM Lend L1
INNER JOIN Lend L2 ON L1.ISBN = L2.ISBN AND L1.Lno < L2.Lno
WHERE L1.ISBN IN (
    SELECT ISBN
    FROM Lend
    GROUP BY ISBN
    HAVING COUNT(*) > 1
)

在这里插入图片描述
感觉这个题有点儿坑,因为三个人借了同一本书有三个读者对,两个人借了同一本书只有一个读者对,只有一个人借了同一本书就没有读者对,也不知道我理解的对不对~
9从lend表和Reader表中查询各专业读者的人数,平均借阅册数,结果显示专业名、专业人数和人均节约图书册数、统计借阅册数不要直接使用Reader表中的Bornum属性值来实现。

USE tsgl
GO
SELECT Reader.Spec AS 专业名, COUNT(DISTINCT Reader.Lno) AS 专业人数, 
    ROUND(COUNT(Lend.ISBN) / COUNT(DISTINCT Reader.Lno),2) AS 人均借阅册数
FROM Reader
LEFT JOIN Lend 
ON Reader.Lno = Lend.Lno
GROUP BY Reader.Spec;

在这里插入图片描述
人数是没错的,但人均借阅册数我不知道对不对
10 列出有超期还书记录的读者的借书证号、姓名及书名

USE tsgl
GO
SELECT L.Lno, R.Rname, B.Bname
FROM Lend L
JOIN Reader R ON L.Lno = R.Lno
JOIN Book B ON L.ISBN = B.ISBN
WHERE DATEDIFF(day, L.Bordate, GETDATE()) > 60

在这里插入图片描述
仅供个人参考后面几题我也不知道对不对

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1134705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes(K8S)快速搭建typecho个人博客

Kubernetes&#xff08;K8S&#xff09;快速搭建typecho个人博客 1、准备工作 K8S集群环境&#xff0c;搭建教程参考腾讯云Lighthouse组建跨地域Kubernetes集群 K8S集群面板&#xff0c;搭建教程参考Kubernetes集群管理面板的安装及使用 - 青阳のblog-一个计算机爱好者的个人…

[moeCTF 2023] pwn

总体上来说并不难&#xff0c;不过对于新生来说还是相当好的。循序渐进&#xff0c;很适合PWN入门到放弃。 baby_calculator 就是要算对100个10以内加法&#xff08;幼儿园的题&#xff09;练习pwntools和python from pwn import * from hashlib import md5 import string …

android button 按钮,设置左/右小图标,与文字居中距离

参考博客地址 功能点 支持自定义图标与文字的距离支持小图标宽高自定义支持左右自定义小图标 maven { url https://jitpack.io } implementation com.github.CMzhizhe:AppCompatButtonProject:1.0.0<com.gxx.buttonlibrary.DrawableCenterButtonandroid:layout_marginTop&…

基于aop 代理 Sentinel Nacos配置控制包装类实现原理

基于aop & 代理 & Sentinel & Nacos配置控制包装类实现原理 Hi&#xff0c;我是阿昌&#xff0c;今天记录下看sentinel源码结合业务实现的思路基于aop & 代理 & Sentinel & Nacos配置控制包装类实现原理&#xff1b;下面并不会手把手的记录方案的实现…

【数据结构初阶】十、快速排序讲解和实现(三种递归快排版本 + 非递归快排版本 -- C语言实现)

相关代码gitee自取&#xff1a; C语言学习日记: 加油努力 (gitee.com) 接上期&#xff1a; 【数据结构初阶】九、排序的讲解和实现&#xff08;直接插入 \ 希尔 \ 直接选择 \ 堆 \ 冒泡 -- C语言&#xff09;-CSDN博客 常见排序算法的实现&#xff08;续上期&#xff09; …

ruoyi-nbcio版本从RuoYi-Flowable-Plus迁移过程记录

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 从KonBAI / RuoYi-Flowable-Plus 项目移植过来&#xff0c;开始用yarn install之后yarn run dev 还是有问…

在Go项目中二次封装Kafka客户端功能

1.摘要 在上一章节中,我利用Docker快速搭建了一个Kafka服务,并测试成功Kafka生产者和消费者功能,本章内容尝试在Go项目中对Kafka服务进行封装调用, 实现从Kafka自动接收消息并消费。 在本文中使用了Kafka的一个高性能开源库Sarama, Sarama是一个遵循MIT许可协议的Apache Kafk…

【机器学习合集】优化目标与评估指标合集 ->(个人学习记录笔记)

文章目录 优化目标与评估指标1. 优化目标1.1 两类基础任务与常见优化目标1.2 分类任务损失0-1损失交叉熵损失与KL散度softmax损失的理解与改进Hinge损失 1.3 回归任务损失L1/L2距离L1/L2距离的改进 Huber loss 2. 评测指标2.1 分类任务中评测指标准确率(查准率)/召回率(查全率)…

应急响应-网站入侵篡改指南_Webshell内存马查杀_漏洞排查_时间分析

1. 前言 一般安服在做项目的时候&#xff0c;经常会遇到需要做应急响应的工作&#xff0c;所谓应急响应就是当网站出现异常的时候&#xff0c;根据相关的问题对其进行溯源分析&#xff0c;发现问题&#xff0c;解决问题。 2. 网络安全异常特征 这里大概汇总一下网络安全异常的…

二叉树相关问题细谈递归

大家好&#xff0c;我是Dark Flame Master&#xff0c;今天给大家带来的介绍的是递归的思想&#xff0c;然后利用递归的方法实现建树的各个函数&#xff0c;例如节点个数&#xff0c;前中后序遍历&#xff0c;判断一棵二叉树是否为完全二叉树等&#xff0c;看完本文相信你会对递…

基于情感词典的情感分析方法

计算用户情绪强弱性&#xff0c;对于每一个文本都可以得到一个情感分值&#xff0c;以情感分值的正负性表示情感极性&#xff0c;大于0为积极情绪&#xff0c;小于0反之&#xff0c;绝对值越大情绪越强烈。 基于情感词典的情感分析方法主要思路&#xff1a; 1、对文本进行分词…

【1】zabbix6.4监控windows电脑操作教程

实验目标&#xff1a; 1.客户端&#xff08;windows&#xff09;安装zabbix agent 并添加到zabbix服务端&#xff1b; 2.可视化常用指标方便快速监控&#xff0c;及时了解客户端情况。 实施1&#xff1a; 步骤1&#xff1a;下载zabbix windows端安装包 官网下载传送门>D…

Android 10.0 Launcher3定制化之动态日历图标功能实现

1.概述 在10.0的系统产品rom开发中,在Launcher3中的相关定制化功能中,对于一些产品要求需要动态日历图标功能,在日期改变的时候,日历图标也需要跟着改变 所以需要自定义日历图标,监听日历改变的广播,收到日期改变的广播后,刷新日历图标,接下来就来分析关于动态日历图标…

5G与无人驾驶:引领未来交通的新潮流

5G与无人驾驶&#xff1a;引领未来交通的新潮流 随着5G技术的快速发展和普及&#xff0c;无人驾驶技术也日益受到人们的关注。5G技术为无人驾驶提供了更高效、更准确、更及时的通信方式&#xff0c;从而改变了我们对交通出行的认知和使用方式。本文将探讨5G技术在无人驾驶领域的…

大数据软件系统的交付流程

大数据软件系统的开发和交付流程通常涉及多个阶段&#xff0c;需要按照一定的计划和方法进行。以下是一个一般性的大数据软件系统开发和交付流程&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.需求…

查找算法-顺序查找法(Sequential Search)

目录 查找算法-顺序查找法&#xff08;Sequential Search&#xff09; 1、说明 2、算法分析 3、C代码 查找算法-顺序查找法&#xff08;Sequential Search&#xff09; 1、说明 顺序查找法又称线性查找法&#xff0c;是一种比较简单的查找法。它是将数据一项一项地按顺序…

硬件知识积累 PCIE 接口

1. PCIE 是什么 中文名称&#xff1a;高速串行计算机扩展总线标准 PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准&#xff0c;它原来的名称为“3GIO”&#xff0c;是由英特尔在2001年提出的&#xff0c;旨在替代旧的PCI&#xff0c…

nexus 快速搭建-本地私有仓库 -maven

场景&#xff1a; 需要上传打包starer本地、局域网内 jar包上传、下载搭建后本地有层代理&#xff0c;可节省代宽&#xff0c;无网可拉包等… 下载&#xff1a; https://help.sonatype.com/repomanager3/product-information/download 基本说明&#xff1a; proxy 用来代理远程…

ChatGPT AIGC 快速合并Excel工作薄 Vlookup+INDIRECT

在职场中进行数据处理,数据分析汇报与统计的过程中,经常会遇到这样的一个问题,那就是需要统计的数据源在多个文件中,多个工作薄中,如果要进行数据处理,汇总的时候会很不方便。 如果要汇总6个月的数据可能就得需要手动复制了。 再或者用其它方法来进行数据合并。 例如我…

高效的文件管理方法:如何批量在文件名中间插入特定内容

在高效的文件管理中&#xff0c;批量操作是一项非常重要的技能。通过批量操作&#xff0c;我们可以同时处理多个文件&#xff0c;节省时间和精力。本文将介绍一种实用的方法&#xff0c;即云炫文件管理器如何在文件名中间批量插入特定内容&#xff0c;以实现高效的文件管理。现…