数据库SQL语言实战(三)

删除操作

本篇文章重点在于SQL中的各种删除操作

题目一

删除表中的学号不全是数字的那些错误数据,学号应该是数字组成,不能够包含字母空格等非数字字符。方法之一:用substr函数,例如Substr(sid,1,1)返回学号的第一位,判断是否是数字。

delete from test3_01
where sid not in
	(select sid
	from test3_01
	where regexp_like(sid, '^[0-9]+$'))

关键点:

1、利用正则表达式来实现

2、^:表示字符串开始;$:表示字符串结束;[0,9]:表示10个数字;+:表示有一种或多种前面[]中的数
3、允许空白字符可以用'^[0-9\s]+$'

题目二 

删除表中的出生日期和年龄(截止到2012年的年龄,即年龄=2012-出生年份)不一致的那些错误数据。

delete from test3_02
where age <> 2012 - extract(year from birthday)

关键点:

1、Extract函数是在Oracle数据库中用于从日期或时间间隔类型数据中提取特定部分,如年、月、日、小时、分钟等的一个函数 

题目三 

删除表中的性别有错误的那些错误数据(性别只能够是“男”、“女”或者空值)。

delete from test3_03
where sex <> '男' and sex <> '女' and sex is not null

关键点:

1、null的处理只能是 is null 或者 is not null

2、null在算术运算或逻辑运算中返回值都是null

题目四 

删除表中的院系名称有空格的、院系名称为空值

delete 
from test3_07
where sid not in(
  select sid
  from pub.student
)

的或者院系名称小于3个字的那些错误数据。

delete from test3_04 
where dname like '% %' or
dname is null or
length(dname) < 3

关键点:

1、like '% %’ 来表示名称有空格

2、length()来计算属性值的长度 

 题目五

删除表中的班级不规范的那些错误数据,不规范是指和大多数不一致。

delete from test3_05
where class not in
(
    select class
	from test3_05
	where regexp_like(class, '^[0-9]+$')
)

题目六

删除其中的错误数据,错误指如下情况:课程号和教师编号在教师授课表pub.teacher_course中不同时存在的,即没有该教师教该课程;

方法一:

delete 
from test3_08 T
where not exists(
  select cid, tid
  from pub.teacher_course A
  where T.cid=A.cid and T.tid=A.tid
)

方法二、 

delete 
from test3_08 
where (cid, tid) not in(
    select cid, tid
    from pub.teacher_course
)

关键点:

1、 (cid, tid)让cid和tid作为一个整体在关系中匹配,要求同时匹配而不是分开匹配

2、not exists在问题出现不存在时可以使用

 题目七

删除其中的错误数据,错误指如下情况:成绩数据有错误(需要先找到成绩里面的错误)。

delete
from test3_09
where score not between 0 and 100

关键点:

1、between x and y语句的使用 

题目八 

删除其中的错误数据,错误指如下情况:学号在学生信息pub.student中不存在的;课程号在课程信息pub.course中不存在的;教师编号在教师信息pub.teacher中不存在的;课程号和教师编号在教师授课表pub.teacher_course中不存在的;成绩数据有错误(需要先找到成绩里面的错误)。

delete
from test3_10 S
where sid not in
	(select sid
	from pub.student)
or cid not in
	(select cid
	from pub.course)
or tid not in
	(select tid
	from pub.teacher)
or not exists
	(select cid, tid
	from pub.teacher_course T
	where S.cid = T.cid
	and S.tid = T.tid)
or score not between 0 and 100

关键点:

1、多个条件并列选其一即可用or实现 

总结 

本文的所有题目均来自《数据库系统概念》(黑宝书)、山东大学数据库实验三。不可用于商业用途转发。

如果能帮助到大家,大家可以点点赞、收收藏呀~ 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!

&#x1f9f8;欢迎来到dream_ready的博客&#xff0c;&#x1f4dc;相信您对博主首页也很感兴趣o (ˉ▽ˉ&#xff1b;) 博主首页&#xff0c;更多redis、java等优质好文以及各种保姆级教程等您挖掘&#xff01; 目录 需求分析 常用案例举例 加盐加密逻辑如何对比原数据&…

分布式光纤测温解决方案

安科瑞电气股份有限公司 祁洁 15000363176 一、方案介绍 分布式光纤测温&#xff08;DTS&#xff09;集光电信号检测、计算机技术等为一体&#xff0c;具有实时监测、测温精度高、测量距离长、可精确定位、采用光纤作为传感器和传输介质&#xff0c;具有抗电磁干扰、本征防…

GVRP协议与动态、静态vlan

一、GVRP协议使用场景 1、当实际组网复杂到网络管理员无法短时间内了解网络的拓扑结构&#xff0c;或者是整个网络的VLAN太多时&#xff0c;工作量会非常大&#xff0c;而且非常容易配置错误。在这种情况下&#xff0c;用户可以通过GVRP的VLAN自动注册功能完成VLAN的配置。 2、…

【Vue3】setup语法糖的使用

文章目录 setup简介使用vite-plugin-vue-setup-extend插件 指定组件名字 setup简介 <script setup> 是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖 相比较普通的<script> ,它有以下优势&#xff1a; 更少的样板内容&#xff0c;更简洁的代码。能够使用纯…

【教程】如何使用ArcPy快速批量的处理数据

前面介绍了如何构建自己的ArcGIS工具箱&#xff0c;能够极大地减轻繁琐重复的工作&#xff0c;可查看&#xff1a; 【教程】如何自制一个ArcGIS工具箱&#xff08;ArcPy和模型构建器的使用&#xff09; 除了制作工具箱来实现自动处理重复性的工作&#xff0c;还可以使用ArcPy…

解决Error (169281)、Error (169282)报错问题,QuartusII设置Virtual Pin虚拟管脚的详细操作方法

解决Error(169281)、Error(169282)报错问题,QuartusII设置Virtual Pin虚拟管脚的详细操作方法 1,QuartusII报错信息2,解决办法3,重新编译,成功参考文献: 1,Quartus如何设置虚拟管脚Virtual Pin(具体设置方法) 1,QuartusII报错信息 报错原因:    为了验证FPGA工…

vr兽医设备操作模拟仿真教学平台提升教学效果

在兽医教育的传统领域中&#xff0c;动物诊疗一直是一项不可或缺的实践环节。然而&#xff0c;传统的解剖教学方式受限于动物数量、种类以及安全隐患&#xff0c;无法充分满足学生的学习需求。随着VR虚拟仿真技术的不断精进&#xff0c;VR动物诊疗仿真实训系统为兽医教育带来了…

福州复式装修,115平四室三厅现代简约风。福州中宅装饰,福州装修

设计亮点 设计理念&#xff1a; 静享时光谧境 克制的优雅&#xff0c;简约的沉淀 以光为引&#xff0c;以意为境 案例简介&#xff1a; 该方案现代风格为整个设计带来现代的舒适感&#xff0c;各种材质相互碰撞的设计&#xff0c;即保持着整齐的视感&#xff0c;又将高级气质凸…

所有人记住!电商选品千万别学会这6个步骤!我怕你流量池爆掉!

电商选品是一个非常重要的环节&#xff0c;它直接关系到店铺的流量、销售以及客户的满意度&#xff0c;做好选品才能打造爆款产品&#xff0c;提升流量和销售。因此&#xff0c;正确的电商选品步骤是至关重要的。以下是一些店雷达帮大家梳理的关键电商选品步骤以及运营建议&…

全国产化无风扇嵌入式车载电脑在救护车远端诊断的行业应用

救护车远端诊断的行业应用 背景介绍 更加快速的为急症病人在第一时间开始进行诊断和治疗,是提高病人救助成功率的关键。因此&#xff0c;先进的救护系统正在思考&#xff0c;如何在病人进入救护车之后&#xff0c;立刻能够将救护车中各种检查仪器的信息快速的传回医院&#xf…

移动端vue3使用pdfjs在浏览器上面运行正常,在移动端页面报错出现空白页

1.PDFjs文件包&#xff1a; 分享一下PDFjs文件包&#xff0c;这是我在其他博客那里找到的&#xff0c;找了好久&#xff0c;在官网下载一天了&#xff0c;一直下载失败&#xff0c;只能去找其他人的。我也想把这个包分享给大家&#xff0c;真心好用。一开始我的浏览器页面一直…

黄仁勋最新访谈:GPU性能的革命性提升与AI未来

近期&#xff0c;英伟达CEO黄仁勋与美国CNBC知名主持人、股评人吉姆克莱默&#xff08;Jim Cramer&#xff09;在《Mad Money》节目中展开了一场关于技术未来和人工智能的对话。访谈里&#xff0c;黄仁勋不仅提到了英伟达在过去八年中将AI算力性能提高1000倍&#xff0c;还预言…

前端Vue3+uni+Ts

本次记录小兔仙仙的制作过程。 先看下我们的项目截图。主要是手机端&#xff0c;这里用了uniappVScode.三端适配的。可以打包成安卓和苹果。微信小程序。 首先&#xff1a;创建一个uni新的ts项目。 # 通过 git 从 gitee 克隆下载 登录 - Gitee.com git clone -b vite-ts http…

记录-海思开发板的 嵌入式nginx和 php的移植(交叉编译环境配置)

嵌入式 lnmp搭建的记录 N&#xff1a;NginxP&#xff1a;php编译PHP可能遇到的问题configure阶段&#xff1a;Makefile-make阶段&#xff1a;Makefile-make install阶段&#xff1a; 文章比较水&#xff0c;并没有没解决什么实际问题&#xff0c;有点不好意思发布。但好像又记录…

【剪映专业版】08剪映电脑版剪辑基本操作流程

视频课程&#xff1a;B站有知公开课【剪映电脑版教程】 第一个时间是当前时间指示器所在时间&#xff0c;第二个时间是总长 撤销、恢复、分割 向左裁剪、向右裁剪&#xff1a;以时间指示器为起始&#xff0c;去掉左边或者右边的内容 删除 主轨道&#xff1a;有封面的这个轨道 …

如何入行产品经理?

转产品经理第一点要先学基础理论知识&#xff0c;学了理论再去实践&#xff0c;转行&#xff0c;跳槽&#xff01; 学理论比较好的就是去报NPDP的系统班&#xff0c;考后也会有面试指导课&#xff0c;跟职场晋升课程&#xff0c;对小白来说非常合适了~&#xff08;可以去哔站找…

嵌入式硬件需要过哪几关?

目标是成为一名硬件工程师,用电烙铁和电路板一统江湖,游戏共有九关。 第一关:基础基础还是基础! 你要有一定的基础,模电,数电这些都得会一些。一般科班出身的专业有电信,通信,自动化等等。 你如果完全没这些基础,连电阻,电容都不认识,那就需要在这关待上很久啦。 …

走近网络安全公司:F5探索应用安全至简之道

伴随企业加速数字化转型工作、扩展到新的基础设施环境并采用微服务架构&#xff0c;企业正在拥抱混合和多云基础设施所带来的灵活性。现在跨越四种环境部署应用的企业&#xff0c;其平均需要管理和保护的应用数据路径比应用仅限本地部署时多10倍&#xff0c;复杂性呈指数级增加…

Photoshop 2024 (ps) v25.6中文 强大的图像处理软件 mac/win

Photoshop 2024 for Mac是一款强大的图像处理软件&#xff0c;专为Mac用户设计。它继承了Adobe Photoshop一贯的优秀功能&#xff0c;并进一步提升了性能和稳定性。 Mac版Photoshop 2024 (ps)v25.6中文激活版下载 win版Photoshop 2024 (ps)v25.6直装版下载 无论是专业的设计师还…

常见面试算法题-九宫格按键输入法

■ 题目描述 九宫格按键输入&#xff0c;判断输出&#xff0c;有英文和数字两个模式&#xff0c;默认是数字模式&#xff0c;数字模式直接输出数字&#xff0c;英文模式连续按同一个按键会依次出现这个按键上的字母&#xff0c;如果输入”/”或者其他字符&#xff0c;则循环中…