У меня не установлен 11g, но есть операция PIVOT и UNPIVOT для преобразования столбцов в строки / строки в столбцы, что может быть хорошей отправной точкой.
http://www.oracle.com/technology/pub/articles/oracle-database-11g-top-features/11g-pivot.html
(Фактически проведенное некоторое дальнейшее исследование, это не подходит для этого случая - оно работает с фактическими строками / столбцами, но не с наборами данных в столбце).
Существует также DBMS_UTILITY.comma_to_table и table_to_comma для преобразования списков CSV в pl / sql-таблицы. Есть некоторые ограничения (обработка строк и т. Д.), Но может быть хорошей отправной точкой.
Моей наклонностью было бы использовать подход TYPE с простой функцией, которая выполняет comma_to_table, затем PIPE ROW для каждой записи в результат comma_to_table (к сожалению, DBMS_UTILITY.comma_to_table - это процедура, поэтому нельзя звонить из SQL).