У меня есть функция, которая proccess некоторые данные:создания представления в функции PostGreSQL
CREATE OR REPLACE FUNCTION A(x integer, y timestamp with time zone, z integer[])
RETURNS SETOF typea AS
$BODY$
SELECT *
FROM func1($1,$2,$3) as a
WHERE ...
$BODY$
LANGUAGE sql VOLATILE
Как я могу преобразовать запрос:
SELECT *
FROM func1($1,$2,$3) as a
WHERE ...
в VIEW
? Дело в том, что func1 нужны параметры функции A ...
То, что я сейчас это:
CREATE OR REPLACE FUNCTION A(x integer, y timestamp with time zone, z integer[])
RETURNS SETOF typea AS
$BODY$
CREATE OR REPLACE VIEW myView as (select * from func1($1,$2,$3));
select * from myView ;
$BODY$
LANGUAGE sql VOLATILE
и я получаю
ERROR: relation "myView " does not exist
в select * from myView ;
Эта функция генерирует некоторые данные, работа над ними дает окончательный результат. Я хочу посмотреть результат до и после того, как функция сделала это. Первым шагом функции является генерация данных, поэтому второй шаг необходимо сохранить. и вот где я застрял. Как бы это сделать? – avi
Я предлагаю вам либо сохранить результаты в таблице, либо распечатать их. Представление не похоже на правильное решение этой проблемы. Возможно, вы захотите задать еще один вопрос, описывающий то, что вы действительно пытаетесь выполнить, вместе с образцами данных и желаемыми результатами. –
Вы сказали, что Dynamic sql может решить эту проблему. Как бы вы это сделали? – avi