Postgres将新的fileld添加到jsonb对象

时间:2018-06-28 13:31:27

标签: postgresql sql-update postgresql-9.5

我的表中有jsonb列,其中包含此数据。

{"key1": "value1", "key2": "value2"}

我需要做的事情是向这个json对象添加新的键值。我所做的是运行这两个脚本,但是它们都不起作用。

UPDATE table SET data = data || '{"key3": "value3"}' WHERE id ='1';

UPDATE table SET data = jsonb_set(data, '{key3}', '"value3"', true) WHERE id ='1';

当我运行第一个脚本时,它会显示此错误。 列“数据”的类型为jsonb,但表达式的类型为文本。然后我以这种方式打字。

UPDATE table SET data = data || '{"key3": "value3"}'::jsonb WHERE id ='1';

我需要了解以上两个更新脚本的问题。 我有postgres 9.5数据库。

0 个答案:

没有答案