我在PostgreSQL中有一个表"Health"
,有两列
Health_id integer
health_data double precision[]
示例数据:
Health_id health_data
1 {1,2.1,3.2,8.1,9.0}
我想从health_data
Health
中选择数组health_id = ?
,但是我用逗号获取数组:
{1,2.1,3.2,8.1,9.0}
如何使用空格而不是逗号来获取数组,如下所示:
{1 2.1 3.2 8.1 9.0}
答案 0 :(得分:1)
数组的默认文本表示形式使用逗号分隔元素
使用array_to_string()
生成所需的文本表示:
SELECT array_to_string(health_data, ' ') AS health_data_with_spaces
FROM "Health";
如果你想要周围的{}
,你必须手动添加它们:
SELECT '{' || array_to_string(health_data, ' ') || '}' AS health_data_with_spaces
FROM "Health";
答案 1 :(得分:0)
array_to_string应该这样做。
(Default)Encoding
https://www.postgresql.org/docs/9.5/static/functions-array.html