首页 科普 资讯 养生 问答 找医院 相关问答
首页> 问答

update更新多行数据(oracle)

发布网友 发布时间:2024-10-24 17:23

我来回答

1个回答

热心网友 时间:2024-11-06 04:20

笔记总结了在工作中遇到过的几种update方法和各种方法适用的范围。



1. 单表更新方案:使用标准update语法即可,执行稳定且效率较高。格式为update table set (column1,column2,)=value1,value2,;,适用于单表更新。



2. 多表关联更新举例:例如,更新gkfq_rec表中所有slid与oa2_ftask表fi_inst相同的行,将blzt字段值更新为oa2_ftask表的ft_lstate。



方法描述、适用范围、运行效率:




传统方案:适用于一般情况下的单表更新,效率高且稳定。但当涉及多表时,效率较慢。
inline view更新法:适用于关联字段为主键的场景,速度较快。要求B表的主键字段必须在where条件中,并且是以=号来关联被更新表。若条件错误,可能报错。
merge更新法:适用于关联字段非主键的场景,速度较快。通过MERGE INTO语句操作,适用于连接条件不是主键的字段。
快速游标更新法:适用于复杂逻辑情况,效率很高。利用快速游标,支持复杂逻辑的查询语句,更新准确,无论数据多大更新效率依然很高。


具体实现方法如下:




传统方案:

update gkfq_rec aset blzt=(select b.ft_lstate from oa2_ftask b where a.slid=b.fi_inst)where exists(select 1 from oa2_ftask b where a.slid=b.fi_inst);


子查询返回多行值时,通过where exists条件逐行过滤,一一匹配实现set唯一值。



inline view更新法:

update (select a.blzt as blzt,b.ft_lstate as ft_lstatefrom gkfq_rec a,oa2_ftask b where a.slid=b.fi_inst)set blzt=ft_lstate;


要求B表的主键字段必须在where条件中,并且是以=号来关联被更新表,否则可能报错。



merge更新法:

merge into gkfq_rec ausing oa2_ftask bon (a.slid=b.fi_inst)when matched thenupdate set a.blzt=b.ft_lstate;


在alias2中select出来的数据,每一条都跟alias1进行比较,若匹配,就进行更新操作,不匹配,执行插入操作。



快速游标更新法:

beginfor aa in (select a.rowid as rowid,b.ft_lstate as ft_lstate from gkfq_rec a,oa2_ftask bwhere a.slid=b.fi_inst ) loopupdate gkfq_rec set blzt=aa.ft_lstatewhere rowid=aa.rowid;end loop;end;


配合oracle独有的内置ROWID物理字段,使用快速游标,不需要定义,直接把游标写到for循环中,快速定位并执行更新。





综上所述,针对不同的更新需求和场景,选择适合的方法可以提高更新效率和稳定性。在具体操作时,需根据实际数据和业务需求灵活选择。

什么叫补按揭 后按揭贷款什么意思 买房者续按揭有什么危害 加按揭是什么意思 八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 上海宏宇香精香料有限公司怎么样? 江苏中海华核环保有限公司怎么样? 北京佳宸宏宇科技有限公司怎么样? 珲春最火三个地方 我对孩子们的“忏悔” 终于,吴彦祖肌肉萎了?这个颓废油腻男是谁?! 抖店体验分初始评分是多少 抖店评分多久清零 抖店有30单多久出体验分 体验分多久清零 华为荣耀4c手机。可以照相。我想录像。可是点了那个红色按键。响了一... 从郑州有几条途径去焦作,分别是坐什么车,晚上最后一班车几点? 急急急急!!!郑州到焦作公交车晚上最后一班车在几点?谢谢 ...现在充电就显示充电灯是红颜色。手机是华为荣耀4C 从郑州到焦作的长途汽车最晚几点发车 现在郑焦公交车最后一班车晚上几点? 华为荣耀4c充电时指示灯亮红色 郑州到焦作的汽车 士在英文是什么意思? 更改离婚协议需要什么证件 离婚协议的内容是否可以反悔 酷睿处理器i7现在在市场中处于一个什么位置,现在性价比如何? 为什么医药是防御板块 现在买ipad2能完美越狱了吗? 专利号ZL 2018113118390.6是什么求大神查一下是不是真的 有没有哪位大神能帮忙查一下专利号2015091701339110的真伪吗 ? 揭秘专利授权流程:从申请到授权的关键步骤详解 比较一下明朝和唐朝的科举考试,指出它们有何不同之处。 一个人成长的句子经典语录 会计控制包括什么控制 会计控制是指什么 会计控制职能的是什么 会计什么是控制 ...不同,从科举制在唐朝于明朝所起的作用说明一下。 大写意大写意名家 什么是会计控制职能 脱硫除尘器新型除尘器 一个盾牌里面一个马 盾牌里面有个马是什么车 每天晚上膝盖难受睡不着怎么办 佳能70D能恢复出厂吗? ...地下室吗?为啥人们都不爱住4 5 7 8 11层呢? 佳能70D能恢复出厂吗?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com