Я пытаюсь экспортировать некоторые агрегированные данные в CSV-файл.Я хочу использовать команду COPY для postgresql, как в приведенном ниже коде, но я получаю данные из команды EXECUTE, которая будет возвращать динамическую таблицу.Команда COPY берет только данные из таблицы, но я не могу сохранить результат во временной таблице, потому что я не знаю количество столбцов, которые будут сгенерированы при выполнении запроса.Кроме того, я пытаюсь сохранить большой набор данных, и я бы избегал дублирования его в промежуточных таблицах.Кто-нибудь знает обходной путь для этого?
CREATE OR REPLACE FUNCTION ExportSnapshotToCsv(qe TEXT)
RETURNS void AS $$
BEGIN
COPY (Execute qe) To '/tmp/test.csv' With CSV DELIMITER ',';
END; $$
LANGUAGE plpgsql;