【问题标题】:MongoDB - Update objects remove item in send array in object (nested updating)MongoDB - 更新对象删除对象中发送数组中的项目(嵌套更新)
【发布时间】:2020-01-24 15:07:02
【问题描述】:

这是我的 mongodb 对象

{
    "_id" : ObjectId("4faaba123412d654fe83hg876"),
    "user_id" : 123456,
    "posters" : [ 123456,1111,456789,3333]
}

我想在海报数组中添加一个项目,或者删除一个我该怎么做?

它的嵌套更新。

我看到了一些关于 stackoverflow 的问题,但我没有找到任何答案如何从数组中删除对象,比如说 3333 那里。

所以结果将是:

{
    "_id" : ObjectId("4faaba123412d654fe83hg876"),
    "user_id" : 123456,
    "posters" : [ 123456,1111,456789]
}

【问题讨论】:

标签: node.js mongodb


【解决方案1】:

使用$pull

db.collection.update(
    { posters: "3333" },
    { $pull: { posters: "3333" } },
    { multi: true }
)

【讨论】:

  • 请不要回答直接的重复,让那些被关闭,这让用户先做功课而不是发布他们想要的一切:-)
【解决方案2】:

使用 $push 将一些东西添加到数组中:

db.collection.update(
{ $push:
    {
        "posters" : "0000"
    }
}
)

使用 $pull 从数组中删除一些东西:

db.collection.update(
{ $pull:
    {
        "posters" : "3333"
    }
}, True
)


【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多