表的插入、更新、删除、合并操作_19_通过表关联删除记录
通过表关联删除记录
需求描述
需求:删除dept表里deptno和temp相同的记录,但数据不可再恢复.
解决方法:这里通过DELETE FROM tableNAME A JOIN tableName B …方式来删除数据.
注: 数据库数据集SQL脚本详见如下链接地址
员工表结构和数据初始化SQL脚本
SQL代码
-- Sql server:
BEGIN TRANSELECT * FROM dept;DELETE FROM deptFROM dept AJOIN temp BON A.deptno = B.deptnoSELECT * FROM dept;ROLLBACK TRAN--Mysql:
BEGIN;
SELECT * FROM dept A;
-- JOIN temp B
-- ON A.deptno = B.deptnoDELETE A FROM dept A
INNER JOIN temp B
ON A.deptno = B.deptno AND B.deptno=40;--或者见下
DELETE dept FROM dept,temp
WHERE dept.deptno = temp.deptno AND temp.deptno=40;SELECT * FROM dept;
-- 不难发现,这里dept表里deptno=40的记录被删除了.
ROLLBACK;
执行结果
-- Oracle:
INSERT INTO dept VALUES(50,'Production','Nanjing');
INSERT INTO temp(deptno,deptname,loc,empno,ename,sal)
SELECT 50,'Production','Nanjing',7369,'SMITH2',1000 FROM DUAL;
DELETE FROM dept WHERE EXISTS (SELECT 1 FROM TEMP WHERE dept.deptno = temp.deptno)
表的插入、更新、删除、合并操作_19_通过表关联删除记录相关推荐
- pg批量插入_PostgreSQL实现批量插入、更新与合并操作的方法
前言 就在 2019 年 1 月份微软收购了 PostgreSQL 数据库的初创公司 CitusData, 在云数据库方面可以增强与 AWS 的竟争.AWS 的 RDS 两大开源数据库就是 MySQL ...
- PostgreSQL实现批量插入、更新与合并操作的方法_PostgreSQL_脚本之家
前言 就在 2019 年 1 月份微软收购了 PostgreSQL 数据库的初创公司 CitusData, 在云数据库方面可以增强与 AWS 的竟争.AWS 的 RDS 两大开源数据库就是 MySQL ...
- 表的插入、更新、删除、合并操作_20_通过表关联删除多张表
通过表关联删除多张表 需求描述 需求:删除dept表里deptno和temp相同的记录,但数据不可再恢复. 解决方法:这里通过DELETE FROM A,B FROM tableNAME A JOIN ...
- php创建表并插入数据,php数据库操作-创建库和表以及插入数据
以上我们正确连接到了mysql数据库,本文将进一步创建数据库,表,在表中填充数据. 大家知道连接上数据库才能进行操作,同样的代码搬过来 /* * 数据库操作*(创建数据库,表,插入数据,插入多条数据) ...
- mysql单表数据列_MySQL 之 数据操作及单表查询
1.数据操作 (1)insert 增加数据 1. 插入完整数据(顺序插入) 语法一: INSERT INTO 表名(字段1,字段2,字段3-字段n) VALUES(值1,值2,值3-值n); 语法二: ...
- 表的插入、更新、删除、合并操作_18_清空表中记录
清空表中记录 需求描述 需求:删除dept表里deptno为50的记录,但数据不可再恢复. 解决方法:这里通过TRUNCATE TABLE TableName方式来删除数据. 注: 数据库数据集SQL ...
- 表的插入、更新、删除、合并操作_14_ 通过表关联更新多个表多个字段
通过表关联更新多个表多个字段 需求描述 需求:更新emp表里的sal字段的值为temp表里的sal乘以1.5,同时更新temp表里ename为emp表里的值,匹配条件是两个表的deptno. 解决方法 ...
- 表的插入、更新、删除、合并操作_13_通过表关联更新多个字段
通过表关联更新多个字段 需求描述 需求:更新emp表里的sal字段的值为temp表里的sal乘以1.5,同时更新ename为temp表里的值, 匹配条件是两个表的deptno.. 解决方法:这里通过U ...
- 表的插入、更新、删除、合并操作_12_通过表关联更新表
通过表关联更新表 需求描述 需求:更新emp表里的sal字段的值为temp表里的sal乘以1.5,这些员工号同时出现在在temp表中. 解决方法:这里通过UPDATE TableName SET Co ...
最新文章
- 2021年大数据ZooKeeper(三):Zookeeper数据模型和节点类型
- 【Scratch】青少年蓝桥杯_每日一题_1.25_投球
- python中一些特殊方法的作用
- MySql - GROUP BY 和 HAVING关键字
- django与grpc融合的过程
- linux内核源代码_如何从源代码构建和安装最新的Linux内核
- Semaphore示例
- 让电脑只能上允许的QQ号
- MySQL使用EXPLAIN查看SQL的执行计划
- 记录一次自己的前端面试心得
- div水平(横向)/垂直排列
- 拓嘉启远:定制类的商品如何处理退款
- 虚拟主机和服务器的区别
- 分享湖南软大自动健康打卡思路
- 【JVM】字节码与ASM字节码增强、Instrument实现类的动态重加载
- c语言文字冒险类游戏,课内资源 - 基于C语言和easyx实现的巧虎划船大冒险游戏...
- 清北师哥推荐的CV/NLP 算法工程师培养计划,强无敌!
- Rosalind Java| Finding a Shared Motif
- Python项目实战 —— 02. 疫情前后全国人口流动可视化大屏
- 下载python包的三种方式
热门文章
- opengl加载显示3D模型AC类型文件
- JavaScript实现Fast Powering算法(附完整源码)
- OpenCASCADE绘制测试线束:拓扑命令之历史命令
- OpenCASCADE绘制测试线束:几何命令之展示
- boost::remove_copy相关的测试程序
- Boost.MultiIndex 使用 multi_index_container::ctor_args_list 的示例
- boost::mpi模块all_reduce() 集合的测试
- boost::hana::trait用法的测试程序
- boost::intrusive::get_parent_from_member用法的测试程序
- boost::geometry::clear用法的测试程序