Oracle中update和select 关联操作


Posted in Oracle onJanuary 18, 2022

1、介绍

本文主要向大家介绍了Oracle数据库之oracle update set select from 关联更新,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助。

工作中有个需求,现在新表中有一些数据跟老表的基本一样,这样只需要把老表中数据搬到新表中就可以了,同时把不同的字段修改下数据即可,在修改字段时发现,需要指定一个条件,比如主键id,来修改某条记录,这样一条一条修改效率太低了,有没有批量操作的方式呢?

goods表:

select gid,code,name,code2 from goods;

Oracle中update和select 关联操作

init_goods表:

select code,name,code2 from init_goods;

Oracle中update和select 关联操作

2、解决方法

2.1、需求

goods表中code2根据init_goods表中code2更新;

2.2、错误演示

下面是一个错误的做法:

update goods set code2 = 
(select code2 from init_goods where init_goods.code = goods.code)

goods表数据无法更新,系统会一直卡主,知道崩溃;

2.3、解决方法

方法一:

update goods set code2 = 
(select code2 from init_goods where init_goods.code = goods.code)
where exists (select 1 from init_goods where init_goods.code = goods.code)

方法二:

update goods goods
set goods.code2 = (select init_goods.code2 from init_goods where init_goods.code = goods.code)
where goods.code = (select init_goods.code from init_goods where init_goods.code = goods.code)

注意:修改的列是code2,条件是 code ;

说明:

如果select 子句可以返回多行记录,但返回适合where条件的记录是唯一的,否则将会报返回单行的select子句返回多行的错误,因为 update只能跟据此处的where子句(内层where)进行相应记录的匹配更新,一次只能是一条。

到此这篇关于Oracle update和select 关联的文章就介绍到这了,更多相关Oracle update和select 关联内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Oracle 相关文章推荐
oracle表分区的概念及操作
Apr 24 Oracle
oracle通过存储过程上传list保存功能
May 12 Oracle
Oracle11g R2 安装教程完整版
Jun 04 Oracle
快速学习Oracle触发器和游标
Jun 30 Oracle
Oracle 临时表空间SQL语句的实现
Sep 25 Oracle
Oracle表空间与权限的深入讲解
Nov 17 Oracle
oracle重置序列从0开始递增1
Feb 28 Oracle
Oracle 多表查询基本语法实例
Apr 18 Oracle
分析SQL窗口函数之取值窗口函数
Apr 21 Oracle
instantclient客户端 连接oracle数据库
Apr 26 Oracle
解决Oracle数据库用户密码过期
May 11 Oracle
oracle设置密码复杂度及设置超时退出的功能
Jun 28 Oracle
使用Oracle命令进行数据库备份与还原
Dec 06 #Oracle
详解Oracle数据库中自带的所有表结构(sql代码)
Oracle表空间与权限的深入讲解
Nov 17 #Oracle
详解Oracle块修改跟踪功能
Nov 07 #Oracle
Oracle安装TNS_ADMIN环境变量设置参考
Nov 01 #Oracle
关于Oracle12C默认用户名system密码不正确的解决方案
Oct 16 #Oracle
C#连接ORACLE出现乱码问题的解决方法
Oct 05 #Oracle
You might like
PHP循环函数使用介绍之PHP基础入门教程
2013/09/21 PHP
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
php、java、android、ios通用的3des方法(推荐)
2016/09/09 PHP
关于PHP5.6+版本“No input file specified”问题的解决
2019/12/11 PHP
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
2007/08/15 Javascript
javascript中input中readonly和disabled区别介绍
2012/10/23 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
Javascript中call的两种用法实例
2013/12/13 Javascript
首页图片漂浮效果示例代码
2014/06/05 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
2014/08/08 Javascript
深入学习jQuery Validate表单验证
2016/01/18 Javascript
jquery ajax双击div可直接修改div中的内容
2016/03/04 Javascript
javascript 数组的正态分布排序的问题
2016/07/31 Javascript
xtemplate node.js 的使用方法实例解析
2016/08/22 Javascript
AngularJS入门教程之模块化操作用法示例
2016/11/02 Javascript
BootstrapValidator超详细教程(推荐)
2016/12/07 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
2017/09/05 Javascript
浅谈Node.js 子进程与应用场景
2018/01/24 Javascript
vue实现点击关注后及时更新列表功能
2018/06/26 Javascript
js实现图片上传即时显示效果
2019/09/30 Javascript
微信小程序一周时间表功能实现
2019/10/17 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
Djang中静态文件配置方法
2015/07/30 Python
python中input()与raw_input()的区别分析
2016/02/27 Python
Python分支结构(switch)操作简介
2018/01/17 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
Python 3.6 -win64环境安装PIL模块的教程
2019/06/20 Python
基于Python第三方插件实现西游记章节标注汉语拼音的方法
2020/05/22 Python
IRO美国官网:法国服装品牌
2018/03/06 全球购物
台湾家适得:Homeget
2019/02/11 全球购物
汽车检测与维修应届毕业生求职信
2013/10/19 职场文书
应届生法律顾问求职信
2013/11/19 职场文书
俄罗斯商务邀请函
2014/01/26 职场文书
感恩老师的演讲稿
2014/05/06 职场文书
观后感的写法
2015/06/19 职场文书
大学生志愿者心得体会
2016/01/15 职场文书