basato su https://blogs.oracle.com/aramamoo/how-to-split-comma-separated-string-and-pass-to-in-clause-of-select-statement :
Per prima cosa, formeremo una query, che divide questa stringa separata da virgole e fornisce le singole stringhe come righe.
SQL> select regexp_substr('20.4,12.5,3.5,0.2,0.2','[^,]+', 1, level) from dual
connect by regexp_substr('20.4,12.5,3.5,0.2,0.2', '[^,]+', 1, level) is not null;
REGEXP_SUBSTR('20.4,1
---------------------
20.4
12.5
3.5
0.2
0.2
La query precedente scorre la stringa separata da virgole, cerca la virgola (,) e quindi divide la stringa trattando la virgola come delimitatore. Restituisce la stringa come riga, ogni volta che raggiunge un delimitatore.