спасибо за помощь.
Извините за плохой английский.
Я создал функцию для возврата имени таблицы, для использования в моем операторе select, здесь скрипт функции:
CREATE OR REPLACE FUNCTION getfromtable(objecttype varchar, destinationtable varchar, firstdate date, OUT tablename varchar)
AS $BODY$
declare
objectType ALIAS FOR $1;
destinationTable ALIAS FOR $2;
firstDate ALIAS FOR $3;
--tableResult varchar;
BEGIN
IF UPPER(objectType) = 'VIEW' THEN
select destinationTable || to_char(cast(firstDate as date),'yy') into tablename;
END IF;
IF UPPER(objectType) = 'TABLE' THEN
select destinationTable || to_char(cast(firstDate as date),'mmyy') into tablename;
END IF;
END;
$BODY$
LANGUAGE plpgsql
Мне нужно использовать эту функцию, потому что у меня есть имена таблиц с MMYY или представления с YY в имени ... функция работает правильно, но мне нужно использовать ее в select, например:
select * from getfromtable('TABLE','tab_venda_',current_date)
Но вот моя проблема: если я выполняю скрипт, postgres возвращает имя таблицы, но не выполняет выборку из таблицы ... мне нужно выполнить выборку в таблице, а не вернуть функцию ...
Как бы мне хотелось, чтобы это было
select * from tab_venda_0319
Что я делаю не так?