У меня есть функция, принимающая два параметра, возвращает некоторые данные из таблиц. Хотите вставить возвращенные строки во временную таблицу (с той же структурой, что и вывод функции) в другой функции.
Пробовал так:
CREATE TEMP TABLE tmp1 (col1 int, col2 int) ON COMMIT DROP;
WITH x as (select function_name(p1, p2))
insert into tmp1 select * from x;
Функция RETURNS TABLE(val1 integer, val2 integer)
Выбор не работает.
ERROR: column "col1" is of type integer but expression is of type record
HINT: You will need to rewrite or cast the expression.
Что мне делать?