如何在postgresql中将获取行转换为单个字符串

时间:2014-07-20 16:03:23

标签: postgresql

对于postgis函数的输入,我使用游标从表中一次获取记录。

我知道单个记录可以通过代码打印:FETCH 1 FROM cur1。我想知道如何将获取的结果转换为单个字符串。

BEGIN;
DECLARE cur1 CURSOR FOR SELECT rec FROM Table;
FETCH 1 FROM cur1;
                    rec
---------------------------------------
 vehicles
(1 row)
END;

谢谢!

1 个答案:

答案 0 :(得分:1)

您只需将行转换为text

即可将行转换为文本
BEGIN;
DECLARE cur1 CURSOR FOR SELECT t.*::text FROM Table t;
FETCH 1 FROM cur1;

行值将用逗号分隔,整行将括在括号中。

如果您还想要列名,则可以将行转换为JSON:

BEGIN;
DECLARE cur1 CURSOR FOR SELECT row_to_json(t.*) FROM Table t;
FETCH 1 FROM cur1;