我的目的是使用 jsonb_set
更新 jsonb
列,该列当前为 null,并且对象具有多个键值对。更新命令成功执行,但它没有更新任何内容,该列仍然为空。我正在尝试以下查询。
UPDATE tab
set value = jsonb_set(value, '{}', '{"a" : 100, "b" : [100, 200]}'::jsonb)
where id = 100;
有什么解决办法吗?
最佳答案
据我了解,这种情况似乎不需要 jsonb_set
。只需将字符串转换为 jsonb
即可更新
UPDATE tab
set value = '{"a" : 100, "b" : [100, 200]}'::jsonb
where id = 100
--and value is null; --additional check if you need.
关于postgresql - 如何在 postgresql 中使用 jsonb_set 更新空的 jsonb 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54473517/