【发布时间】:2021-08-16 20:00:17
【问题描述】:
我需要返回存储在声明变量中的多个值,如何使用 postgres 执行此操作?也许我不需要使用变量,但我需要从 3 个表中返回值。示例中的查询和表已简化
我的例子:
CREATE OR REPLACE FUNCTION public.select_multiple_values(id_ bigint)
RETURNS setof record
LANGUAGE plpgsql
AS $function$
declare
id_child bigint;
id_parent bigint;
name_ varchar;
begin
select id from public.req where id = id_ into id_child;
select reg_id from public.req where id = id_ into id_parent;
select "name" from public.reg where id = id_parent into name_;
return query select id_child, id_parent, name_ ;
END;
$function$
;
【问题讨论】:
-
您不想要
RETURN setof record,而是想要一条记录? -
我无法创建自我类型,因此无法回答我的问题。 @Satyanand bhardwaj 回答像你的第二个链接,但更详细
标签: postgresql