传递参数时执行此代码块时出现问题.参数rf是要输入WHERE子句的变量列表.要输入的变量数不是静态的.
create or replace
procedure test_pl(rf in varchar2)
IS
counter number;
BEGIN
select count(*) into counter from test_pl_imp where column_name in (rf);
dbms_output.put_line(counter);
END;
Run Code Online (Sandbox Code Playgroud)
执行代码如下:
declare
inparam varchar2(20) := 'xyz,ran,dom';
begin
goku.test_pl(inparam);
end;
/
Run Code Online (Sandbox Code Playgroud)
我希望WHERE条件执行如下:
where column_name in ('xyz','ran','dom');
Run Code Online (Sandbox Code Playgroud)
但它会被视为xyz,ran,dom一个字符串本身而被执行.
有没有办法实现它?