oracle存储过程把查询到的值更新到别的表
create or replace procedure update_nst_t_Clime2 as cursor c_db is select * from NST_T_FRAME f left join (select substr(cname,0,2) as cname,cname as realname,cid from nst_t_Clime) c on f.framename like ('%'||c.cname||'%支公司%') where c.realname is not null and f.FRAMETYPE<>2 and f.FRAMETYPE<>1 union select * from NST_T_FRAME f left join (select substr(cname,3,2) as cname,cname as realname,cid from nst_t_Clime) c on f.framename like ('%'||c.cname||'%分公司%') where f.FRAMETYPE=2 and c.realname is not null; begin for temp in c_db loop update nst_t_Clime set frameid= temp.frameid where cid= temp.cid and frameid is null; end loop; end; --运行这个存储过程: Begin update_nst_t_Clime2(); end;
有帮助的点个赞哦~