Ecco come potresti creare una tabella del genere:
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;
Con un po' di ritocco (vale a dire, sostituendo il ,
in [^,]
con una variabile) potresti scrivere una tale funzione per restituire una tabella.