我有Postgres数据库的下一个结果集: 实际上我从不和postgres json一起工作,而且我发现任何相同的例子
id | another_id
--------------
1 | 10
1 | 11
3 | 20
3 | 21
3 | 22
我需要将其转换为json字符串:
{"id":1 , "another_id" : {[10,11]}}
{"id":3 , "another_id" : {[20,21,22]}
答案 0 :(得分:2)
您需要将json聚合与构建json对象结合使用:
select json_build_object('id', id, 'another_id', json_agg(another_id))
from the_table
group by id;
答案 1 :(得分:2)
to_json
x=# select to_json(s)
from (
select id,array_agg(another_id) another_id
from s1
group by id
) s;
to_json
----------------------------------
{"id":1,"another_id":[10,11]}
{"id":3,"another_id":[20,21,22]}
(2 rows)
介意在我的示例中,而不是{[10,11]}
我得到[10,11]
,这对于json来说语法正确