Вернуть строки SETOF из функции PostgreSQL
У меня есть ситуация, когда я хочу вернуть соединение между двумя представлениями. и это много столбцов. Это было довольно легко на сервере SQL. Но в PostgreSQL, когда я делаю соединение. Я получаю сообщение об ошибке "требуется список определений столбцов".
Есть ли способ, которым я могу обойти это, я не хочу предоставлять определения возвращаемых столбцов.
CREATE OR REPLACE FUNCTION functionA(username character varying DEFAULT ''::character varying, databaseobject character varying DEFAULT ''::character varying)
RETURNS SETOF ???? AS
$BODY$
Declare
SqlString varchar(4000) = '';
BEGIN
IF(UserName = '*') THEN
Begin
SqlString := 'select * from view1 left join ' + databaseobject + ' as view2 on view1.id = view2.id';
End;
ELSE
Begin
SqlString := 'select * from view3 left join ' + databaseobject + ' as view2 on view3.id = view2.id';
End;
END IF;
execute (SqlString );
END;
$BODY$