我有一个带有 json 数组的 json 列,格式为
[{key : "key", value : "value"}, {key : "key2", value : "value2"}]
我希望转换为新形式
{"key" : "value", "key2" : "value2"}
.
我可以使用以下查询来获取具有key
列和value
列的行
SELECT json_array_elements(somejson)->'key', json_array_elements(somejson)->'value' FROM temp;
但是,我似乎无法想出将其转换为好的键值 JSON 对象的方法。由于我在 9.3 上,因此我不能使用json_object
或json_build_object
两者之一。
好吧,使用 9.4 会更快更容易,但在简单的情况下使用 9.3 是可行的。
不好玩,但谢天谢地,这是一次性的事情。
这不能用于更新表,但您可以创建一个临时表并首先在其中插入值。