如何显示 PostgreSQL 函数返回的列 headers?
How to display column headers returned by PostgreSQL function?
我有以下 PostgreSQL 函数,它 returns 来自 table 的多个列:
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 = ;
$$
LANGUAGE 'sql';
结果 returns 看起来像这样:
userbyid
--------------------------------------------------------------
(2, smith, smith@example.com, "2017-06-04 19:47:49.472259+00")
是否可以使用正确的列 headers 显示输出,如下所示:
id username email last_login
--------------------------------------------------------------
2 smith smith@example.com 2017-06-04
我正在查看 CREATE FUNCTION 文档页面,但不清楚如何执行此操作。我也在网上搜索过,没有看到讨论这个的文章。
您可以在查询中使用 "as"。
Select id为id,username为用户名....
在 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
您需要格式化 PostgreSQL 以显示列 headers;
设置为:
\t
这可以在 PSQL 帮助中看到
\?
我有以下 PostgreSQL 函数,它 returns 来自 table 的多个列:
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 = ;
$$
LANGUAGE 'sql';
结果 returns 看起来像这样:
userbyid
--------------------------------------------------------------
(2, smith, smith@example.com, "2017-06-04 19:47:49.472259+00")
是否可以使用正确的列 headers 显示输出,如下所示:
id username email last_login
--------------------------------------------------------------
2 smith smith@example.com 2017-06-04
我正在查看 CREATE FUNCTION 文档页面,但不清楚如何执行此操作。我也在网上搜索过,没有看到讨论这个的文章。
您可以在查询中使用 "as"。 Select id为id,username为用户名....
在 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
您需要格式化 PostgreSQL 以显示列 headers; 设置为:
\t
这可以在 PSQL 帮助中看到\?