我有两个表中的数据:的Oracle SQL优化更新
**Supplier:** ERPSupplier, RMSSupplier
**ItemLoc:** Item, Location, Supplier
在ItemLoc供应商是从供应商表ERPSupplier。与ERPS供应商比较后,我需要替换RMSSupplier。
做更新的最佳方式是什么? ItemLoc表中有1000万条记录。
目前我用PLSQL块做的,但其花费过多时间:
DECLARE
cursor c1 is
select * from Supplier;
BEGIN
FOR r in c1 LOOP
update mig_item_loc
set Supplier = r.RMSSupplier
where Supplier = r.ERPSupplier;
END LOOP;
END;
肯定使用一个SQL语句此,并只更新新值与旧值不同的位置。 –