gpt4 book ai didi

arrays - 从 mongodb 中的数组中按名称删除一个元素

转载 作者:可可西里 更新时间:2023-11-01 10:46:23 25 4
gpt4 key购买 nike

我有这样一个文档:

collection: {
_id: ...,
name: ...,
elements: [ "aaa", "bbb", "aaa", "aaa", "ccc" ]
}

请注意,“aaa”出现了多次,这是正确的。

我想删除“aaa”元素中的一个(我不关心是哪一个)。我试过 $pull 的各种组合,但没有得到我想要的结果(它要么拉出其他数组元素,要么拉出所有“aaa”。

如果可能的话,我需要操作是原子的。

最佳答案

我想你想删除一个 "aaa" 这样数组就像 ["bbb","aaa","aaa","ccc"] .

我是按照下面的方式做的,可能还有另一个更好的解决方案,如果有人有,请更新。

PS - 我在集合中只有 1 个元素,您可以在更新语句中添加条件。

db.getCollection('mydb').updateOne({arrElem:"aaa"},{$set:{"arrElem.$":null}})
db.getCollection('mydb').update({},{$pull:{arrElem:null}})

关于arrays - 从 mongodb 中的数组中按名称删除一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51394910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com