oracle update修改几百条数据
收到业务部门一些数据做datafix,平时几条数据for update 一下就行了,今天要几百条,我可不想一条一条去CV,脑海飞速运行。
- 用Java做个Excel导入的功能
- copy到文本编辑器alt+|
- 新建临时表,前两种方法就是笨方法没有一点技术含量。
具体来讲下第三种方法
首先新建一张临时表,把要修改的数据先存到临时表;
临时表table_temp(id,name),要修改的表tableA(id,name)
sql:
update tableA a
set a.name =
(select t.name from table_temp t where a.id = t.id)
where a.id in (select t.id from table_temp t)
我会先检查临时表的数据有多少,正式数据有多少存在临时表,最终更新了多少
此sql适用于数据量不大的情况下,如果数据比较多,执行时间比较长的情况下不建议使用。