У меня есть пользовательская функция парсера строк, которую вы можете использовать ...
ПРИМЕЧАНИЕ: Для заголовков вы можете заменить их как REPLACE ('HEADER', '') и получить значения с запятыми ...
Вы можете проверить код ниже и использовать его в своей базе данных:
FUNCTION STRING_PARSER(VAL VARCHAR2, POSITION VARCHAR2, DELIMITER VARCHAR2) RETURN VARCHAR2 IS
v_pos3 number;
v_pos4 number;
BEGIN
/* Return 3rd occurrence of '_' */
v_pos3 := INSTR(VAL, DELIMITER, 1, POSITION) + 1;
/* Return 4rd occurrence of '_' */
v_pos4 := INSTR(VAL, DELIMITER, 1, POSITION + 1);
return SUBSTR(VAL, v_pos3, v_pos4 - v_pos3);
END;
Использование:
select report_tools_pkg.string_parser(',1,2,3',2,',') from dual
Примечание: Добавить ',' ||имя столбца к вашему sql, если вы хотите, чтобы вы использовали, это как есть ...