gpt4 book ai didi

json - Postgres : Populate a JSON field with an array of values from a subquery

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

我正在尝试使用现有数据填充一个新的 JSON 字段,并且可以使用一些帮助来正确设置该字段的格式。我有一个子查询返回一个值列表,这些值旨在成为 JSON 属性中的一个数组。子查询返回正确的结果,但我无法完全正确填充 JSON 数组。

我的查询基本上是这样的:

UPDATE foos SET json_property =  
cast(
'{"bar_ids":' ||
(select json_agg(x) from (select id from bars) x) ||
'}'
as json);


我要存储的是:

{"bar_ids":[1,2,3,4]}

但我目前得到的是:

{"bar_ids":[{"id":1},{"id":2},{"id":3},{"id":4}]}

想法?

最佳答案

看来一个子查询是不需要的:

UPDATE foos SET json_property =  
CAST(
'{"bar_ids":' ||
(SELECT JSON_AGG(x.id) FROM bars x) ||
'}'
AS json);

关于json - Postgres : Populate a JSON field with an array of values from a subquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48415868/

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