下面,我试图在查询中使用array
我声明的数据,where clause
但我收到以下错误:
declare
v_input varchar2(400) := '0,1,2,3,4';
type t_dep2custrel_type is table of number;
t_dep2cust_rel t_dep2custrel_type;
begin
select regexp_substr(v_input, '[^,]+', 1, level) zz
bulk collect
into t_dep2cust_rel
from dual
connect by regexp_substr(v_input, '[^,]+', 1, level) is not null;
insert into bb_tmp_natonalcode_accnumber
(identificationnumber)
select b.customer_num
from [sample_table] b
where b.dpst2cust_rel_cod in (select * from table(t_dep2cust_rel)); /* here I'm trying to use the array*/
commit;
end;
- “sql 语句中不允许使用本地集合类型”
- “无法访问非嵌套表项中的行”(ORA-22905)
我想知道你是否可以帮我解决这个问题。
提前致谢
您必须将类型创建为数据库对象:
或使用
MEMBER OF
:也应该工作。