我有一个对象数组,它位于表的jsonb value
列中,看起来像这样:
"west": [
{"id": "aa92f346-7a93-4443-949b-4eab0badd983", "version": 1},
{"id": "cd92e346-6b04-3456-050a-5eeb0bddd027", "version": 3}
]
我希望能够根据id和版本从该数组中删除特定的对象,方法如下:
SELECT value::jsonb #- '{west, 1}' FROM game.settings;
然而,
1
不应该是硬编码的,而是应该等于数组中与我正在寻找的 id 和 version 相匹配的对象的位置(在这种情况下为 "id": "cd92e346-6b04-3456-050a-5eeb0bddd027", "version": 3
)。我该如何确定这个数组位置并将其传递到我的硬编码
1
所占据的位置?