Oracle大数据量更新删除sql
Oracle大批量进行数据写入、删除会出现卡死的情况,这里给出一个例子,每秒操作10000,150w数据几分钟内写完。
begin
loop
insert into upload_task select * from upload_taskbak t
where t.create_tm >=
to_date('2021/09/27 22:20:00', 'YYYY/MM/DD HH24:MI:SS')
and t.create_tm <
to_date('2021/09/27 23:20:00', 'YYYY/MM/DD HH24:MI:SS')
and rownum<=10000;
exit when sql%rowcount = 0;
commit;
delete from upload_taskbak u2 where exists (select 1 from upload_task u1
where u1.orderno=u2.orderno) ;
commit;
end loop;
end;
还没有评论,来说两句吧...