gpt4 book ai didi

sql - 如何显示 PostgreSQL 函数返回的列标题?

转载 作者:行者123 更新时间:2023-11-29 13:19:19 24 4
gpt4 key购买 nike

我有以下 PostgreSQL 函数,它从表中返回多列:

CREATE OR REPLACE FUNCTION userbyid(id integer)
RETURNS TABLE(id int, username character varying(30), email character varying(254), last_login timestamp with time zone) AS
$$
SELECT
id,
username,
email,
last_login
FROM
auth_user
WHERE
id = $1;
$$
LANGUAGE 'sql';

它返回的结果如下所示:

                        userbyid
--------------------------------------------------------------
(2, smith, smith@example.com, "2017-06-04 19:47:49.472259+00")

是否可以使用正确的列标题显示输出,如下所示:

id         username       email               last_login
--------------------------------------------------------------
2 smith smith@example.com 2017-06-04

我正在查看 CREATE FUNCTION 文档页面,但不清楚如何执行此操作。我也在网上搜索过,没有看到讨论这个的文章。

最佳答案

FROM 子句中使用您的集合返回函数

SELECT * FROM userbyid(1);

相对于

SELECT userbyid(1);

这里是 dbfiddle演示

示例输出:

 id | username |       email       |       last_login----+----------+-------------------+------------------------  1 | user1    | user1@example.com | 2017-06-13 12:00:00-04

关于sql - 如何显示 PostgreSQL 函数返回的列标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44534728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com