假设在我的程序中,有两个游标,我需要从游标,第一个游标的第一行和第二个游标的第二行等等进行书写。 我如何实现它?我知道如何从单个curs中取出 要么。 或者还有其他一些方法。 在此先感谢,
Nitika
答案 0 :(得分:0)
您可以使用两个for loop语句,如下所示:
CREATE OR REPLACE procedure aProc(filter IN number) IS
cursor c1 is select something, something_else from myTable where something = filter;
cursor c2 is select something2, something_else2 from myTable2;
begin
for alias1 in c1 loop
for alias2 in c2 loop
if(alias1.something = 1) then
insert into myTable3 (value1,value2,value3)
values (alias1.something_else,
alias2.something2,
alias2.something_else2);
end if;
end loop;
end loop;
end;
当找不到更多数据时,for循环语句将关闭打开的游标。