ループで、パラメーター化されたカーソルを呼び出しています。特定のステップで、カーソルが行を返す場合、このループは終了し、カーソルを参照カーソルとして返す必要があります。同じクエリを 2 回実行せずに行数を確認するにはどうすればよいですか?
procedure pr_test
(
v_data varray;
,ret_data sys_refcursor
)
as
cursor c_q(x)
select * from table
where col1 = x;
...
begin
...
for in 1..v_data.count loop
open ret_data for c_q(v_data(i));
----- here some logic is required --------
/*if rowcount of re_data > 0 then
return ret_data;
else
close ret_data;
end if;*/
end loop;
end;