postgresql 9.4中的jsonb_set函数失败
我有以下列postgresql 9.4中的jsonb_set函数失败,postgresql,jsonb,Postgresql,Jsonb,我有以下列configuration,它在jsonb数据类型中存储了大量信息。“我的表格”中的列如下所示: select configuration -> 'object'-> 0 FROM my_table; ?column? -------------------------------------------- [{"resources": {"r1": 1, "r2": 2, "
configuration
,它在jsonb数据类型中存储了大量信息。“我的表格”中的列如下所示:
select configuration -> 'object'-> 0 FROM my_table;
?column?
--------------------------------------------
[{"resources": {"r1": 1, "r2": 2, "r3": 3}]
我试图用jsonb_set
函数更新值r3
,方法如下:
update my_table
set configuration = jsonb_set(configuration::jsonb, '{object,0,resources,r3}::text[]', jsonb '6')
路径看起来正确,数据类型也正确。无论如何,我得到了以下错误:
ERROR: function jsonb_set(jsonb, text[], jsonb) does not exist
数据类型是否仍然不正确?我怎样才能让它工作?提前感谢!:) 解决了,一匹没有名字的马不可能在postgres 9.4中使用该功能
jsonb_set()
是在9.5中引入的,因此您不能在9.4中使用它,但由于Postgres 9.4是一个完美的时刻,可以升级到12ah,我认为它是在9.4中引入的。谢谢