create table my_test (i varchar2(1))
Table created.
insert into my_test (i)
select '1' from dual
union
select '5' from dual
union
select '7' from dual
3 row(s) inserted.
commit
Statement processed.
declare
p_input_json varchar2(1000);
vCount int;
begin
select json_arrayagg(X format json returning varchar2(1000))
into p_input_json
from (
select '1' as X from dual
union
select '2' from dual
union
select '3' from dual
);
DBMS_OUTPUT.put_line (p_input_json);
with jdata as (
select treat(p_input_json as json) as jrow
from dual
)
select count(*)
into vCount
from my_test
where i in (
select jrow --jrow.?
from jdata
);
DBMS_OUTPUT.put_line (vCount);
end;
Statement processed.
[1,2,3]
0
drop table my_test
Table dropped.