Я использую listagg после cte в сохраненном pro c. Однако возвращается ошибка «ORA-01489: результат объединения строк слишком длинный». Ниже моя хранимая процедура.
CREATE OR REPLACE PROCEDURE sp_market
IS
Names VARCHAR2(32767);
BEGIN
WITH CTE(sqql) As
(
SELECT field_name sqql FROM pld_medicare_config
)
SELECT listagg(sqql, ' UNION ALL ') within GROUP (ORDER BY 1) into Names from CTE;
END sp_market;
В запросе на выбор field_name возвращает длинные тексты. Я считаю, что это потому, что listagg не может обрабатывать длинные символы, что является результатом оператора select. Как обойти эту проблему?