UPDATE ONE T
SET T.AGE =
(SELECT T2.AGE
FROM TWO T2
WHERE T2.ID=T.ID
); ONE TWO 都是2百万级别的数据,update执行起来速度太慢了。有没有好的方法让速度快速提起来。
SET T.AGE =
(SELECT T2.AGE
FROM TWO T2
WHERE T2.ID=T.ID
); ONE TWO 都是2百万级别的数据,update执行起来速度太慢了。有没有好的方法让速度快速提起来。
解决方案 »
- exp imp 导出导入 问题
- hurry up:oracle 游标变量与record之间的匹配
- 在线等 菜鸟测试存储过程 附值
- 年月拼凑方法实现:实现199001.。199002.。199003.。。。。。。。。。。299911.。299912,并导出导excel 求助高手~~~
- 如何通过sql语句得到一年当中每周一、每周五的日期?
- 求一个SQL
- 新手请教如何写一个oracle双重循环sql(50分)
- power designer中有字段相同的时候,改变1张表中那个字段,另张表的也变,怎样不改变啊?
- 有两三年SQL Server开发使用经验的,学习Oracle大约需要多少的时间,有经验的请进?
- 求一条查询语句
- 触发器和存储过程实现2张表的同步
- Oracle 语句,急,在线等。。。大大帮帮忙
2)控制事务单位,比如2000条update完一个commit
3)用Oracle专用的update也可以考虑:比如对视图的UPDATE语句
row_num number := 0;
begin
for c_usr in (select login_id from im_user t where id is null) loop
update im_user i set i.id =
(select id from bmw_users u where i.login_id = u.nick)
where login_id = c_usr.login_id;
row_num := row_num + 1;
if mod(row_num,100) =0 then
commit;
end if;
end loop;
commit;
end;