我知道一个表可以从postgresql函数返回,如下所示,
CREATE OR REPLACE FUNCTION public.tmp()
RETURNS table(num int, name text)
LANGUAGE plpgsql
AS $function$
DECLARE rslt record;
begin
for rslt in select * from t1 loop num:=rslt.num; name:=rslt.name; return next; end loop;
return ; end;$function$;
但我需要返回2个不同的表作为可选表,即根据条件执行的任何表。
例如:我有2个表结构。
table(num int, name text)
table(num int, name text, value text)
我需要返回这些表结构中的任何一个。
如何做到这一点?
答案 0 :(得分:0)
您还可以创建所需的两种不同数据类型的列并传递到记录类型。然后你回来了
将类型数据类型创建为(列类型,列类型);