17,377
社区成员
发帖
与我相关
我的任务
分享
declare
t varchar2(10):='aa,bb,cc';
type type1 is table of number index by binary_integer;
temp type1;
begin
execute immediate 'select id from test where name in ('''||replace(t,',',''',''')||''')'
bulk collect into temp;
for i in 1..temp.count loop
dbms_output.put_line(temp(i));
end loop;
end;
是否会出错declare
t varchar2(10):='aa,bb';
cur sys_refcursor;
v number;
begin
open cur for 'select id from test where name in ('''||replace(t,',',''',''')||''')';
loop
fetch cur into v;
exit when cur%notfound;
dbms_output.put_line(v);
end loop;
close cur;
end;
create or replace procedure proc(t in varchar2)
as
type type1 is table of number index by binary_integer;
temp type1;
begin
execute immediate 'select id from test where name in ('''||replace(t,',',''',''')||''')'
bulk collect into temp;
for i in 1..temp.count loop
dbms_output.put_line(temp(i));
end loop;
end proc;