我有一个相对简单的更新语句:
update sv_konginfo ki
set AnzDarl = 1
where kong_nr in (
select kong_nr
from sv_darlehen
group by kong_nr
having count (*) = 1);
它可以自行运行(大约 1 秒,大约 150.000 条记录)。
但是,如果我截断表然后重新插入记录:
truncate table sv_konginfo;
insert into sv_konginfo (kong_nr)
select distinct kong_nr
from sv_darlehen;
更新语句运行非常慢(超过一分钟)处理完全相同的数据。
在第二种情况下,我可以做些什么来提高性能?(我们使用的是 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64 位。)