我在db:的一列中保存了这样的json
{"a":137,"b":"28","c":"1","d":"5","e":19,"f":true}
是否可以用查询来转换";e";在不移除值的情况下插入数组?
{"a":137,"b":"28","c":"1","d":"5","e":[19],"f":true}
update the_table
set the_column = the_column||jsonb_build_object('e', array_to_json(array[the_column -> 'e']))
where ...
CCD_ 1创建一个";"本地";2所引用的单个元素中的数组。该数组被转换为JSON,并使用jsonb_build_object()
创建一个新的JSON值,然后将其连接到现有值。这将覆盖现有密钥"e"
。
以上假设该列定义为jsonb
(应该是CCD_5(。如果它只是json
,你需要铸造它,以使||
的替换工作