그거/DB

A 테이블의 특정 컬럼의 값을 B 테이블의 특정 컬럼 값으로 UPDATE 하는 PL/SQL

뽀기 2008. 12. 8. 16:35

Atab
ifid varchar(15)
snuserid varchar(6)

Btab
ifid varchar(15)
frempid varchar(6)
frsysgn varchar(10)
createempid varchar(6)

declare
  -- cursor 선언(update 할 값을 select 한다.)
  cursor ifinfo_cur is
    select a.ifid ifid, a.snuserid userid from Atab a, Btab b
        where a.ifid = b.ifid and (b.frempid is null or b.createempid is null);

begin
  -- loop 을 돌면서 위에서 얻은 값을 적용한다.
  for ifinfo_rec in ifinfo_cur loop
    update Btab set aa = ifinfo_rec.userid where ifid = ifinfo_rec.ifid;
  end loop;
end;