Gibt SETOF-Zeilen von der PostgreSQL-Funktion zurück

Ich habe eine Situation, in der ich den Join zwischen zwei Ansichten zurückgeben möchte. und das sind viele Spalten. Es war ziemlich einfach in SQL Server. Aber in PostgreSQL, wenn ich den Join mache. Ich erhalte die Fehlermeldung "Eine Spaltendefinitionsliste ist erforderlich".

Gibt es eine Möglichkeit, dies zu umgehen? Ich möchte keine Definitionen für die Rückgabe von Spalten bereitstellen.

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$

Antworten auf die Frage(1)

Ihre Antwort auf die Frage