关于oracle循环语句的一个问题
发布网友
发布时间:2023-03-04 20:21
我来回答
共4个回答
热心网友
时间:2023-09-19 07:15
update table_B b set b.列3=
(select 列1 from table_A a where b.列3=a.列2 and rownum=1)
where exists(select 1from table_A c where a.列3=c.列2);
这是一种办法。。。
或者使用游标
create or replace procere pro_test as
cursor cur_test is select 列1,列2 from table_A,table_B where table_A.列2=table_B.列3;
begin
for I in cur_test loop
update table_B set 列3=I.列1 where 列3=I.列2;
end loop;
end;
/
exec pro_test;
这样回答可以解决你的疑问么?
热心网友
时间:2023-09-19 07:15
一条SQL即可搞定!
update 表B,表A set 表B.列3 = 表A.列1 where 表B.列3 = 表A.列2
热心网友
时间:2023-09-19 07:15
update B set 列3=A.列1(或者2) from A
where A.xx=b.xx
热心网友
时间:2023-09-19 07:16
请问是一个语句还是一个过程?