本帖最后由 Robot221 于 2011-09-04 23:39:52 编辑

解决方案 »

  1.   

    抛砖引玉
    declare
    begin
    for i in (select A.行业名称,B.行业编码 from A,B where A.行业名称=B.行业名称 and A.行业编码 is null) loop
    update A set A.行业编码 = i.行业编码 where A.行业名称 = i.行业名称;
    end loop;
    commit;
    end;
      

  2.   

    merge into a 
    using b 
    on (a.名称=b.名称)
    when matched then update set a.编码=b.编码
    where a.编码  is null
    ;
      

  3.   

    UPDATE A SET 行业编码=(SELECT 行业编码 FROM B WHERE 行业名称=A.行业名称) WHERE 行业编码 IS NULL;
      

  4.   

    MERGE INTO TAB_A A
    USING TAB_B B
    ON (A.行业名称 = B.行业名称)
    WHEN MATCHED THEN
      UPDATE SET A.行业编码 = B.行业编码 WHERE A.行业编码 IS NULL;
    记得得保证B表中的"行业名称"是唯一的,否则要报错了,得除重才可以了