Oto jak możesz stworzyć taką tabelę:
SELECT LEVEL AS id, REGEXP_SUBSTR('A,B,C,D', '[^,]+', 1, LEVEL) AS data
FROM dual
CONNECT BY REGEXP_SUBSTR('A,B,C,D', '[^,]+', 1, LEVEL) IS NOT NULL;
Z odrobiną poprawek (np. zastąpienie ,
w [^,]
ze zmienną) możesz napisać taką funkcję, która zwraca tabelę.