oracle – for in loop 循环更新

用法:目的更新b表的数据

查询出a表的字段,命名为表1。然后更新b表

begin
 for 表1 in (
select [匹配字段],[更新字段] from a表
 ) loop
update b表
set b表.[需要更新字段]= 表1.[更新字段];
where
 b表.[匹配字段]= 表1.[匹配字段];
end loop ;
end;

实例:

begin
 for r in (
  select
   a .*,
   b.shortlist_expire_date old_shortlist_expire_date
  from
   tmp_20180126_zsx a,
   sp_partner_info b
  where
   a .partner_code = b.partner_code
 ) loop
update sp_partner_info
set shortlist_expire_date = r.shortlist_expire_date
where
 partner_code = r.partner_code;
end loop ;
end;

 

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐