【发布时间】:2017-01-02 17:35:46
【问题描述】:
在下面的 Postgresql 函数中,我试图从 2 个不同的表中获取结果,但它抛出错误 ERROR: 42601: a column definition list is required for functions return "record". 谁能帮帮我。
CREATE OR REPLACE FUNCTION load_page_record(IN _session INT) RETURNS RECORD AS
$$
DECLARE r1 RECORD;
DECLARE r2 RECORD;
DECLARE RESULT RECORD;
BEGIN
SELECT array_agg(sq.*) AS arr INTO r1
FROM (SELECT user_id, user_name
FROM "user"
) sq;
SELECT array_agg(sq.*) AS arr INTO r2
FROM (SELECT client_id, client_name
FROM "clients"
) sq;
SELECT r1.arr, r2.arr INTO RESULT;
RETURN RESULT;
END;
$$ LANGUAGE plpgsql;
【问题讨论】:
-
选择 r1.arr 作为 col1,r2.arr 作为 col2 进入结果;试试看
-
@Abihabi87 不工作
-
@Abihabi87 我在 2 个表中的选择查询中有 2 列然后如何返回
-
你真的想返回记录还是你不知道更好?
标签: sql postgresql