问题描述
列数据类型= jsonb
我的json具有20个项目的数组可用性。
示例:
"availability": [
{
"qty": 2,"price": 875,"is_available": false
},{
"qty": 21,"price": 1875,"is_available": false
}
...
我想将数组的项从index = 2更新到4。
我用这个
UPDATE my_table
SET data = jsonb_set(data,'{availability,2,is_available}','true',true)
where (my_table.data #>> '{availability,qty}')::numeric > 0;
UPDATE my_table
SET data = jsonb_set(data,3,qty}')::numeric > 0;
UPDATE my_table
SET data = jsonb_set(data,4,qty}')::numeric > 0;
我执行3个查询。而且有效。
但是...是否可以通过一个查询更新数组中的3个项目(从2到4的索引)?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)