如何更新子文档mongodb

Posted

技术标签:

【中文标题】如何更新子文档mongodb【英文标题】:how to update subdocument mongodb 【发布时间】:2017-08-15 15:26:36 【问题描述】:

这是我的收藏:


    "_id" : ObjectId("58d32e3c8726e31b00004ac9"), 
    "buyer" : "zul@buyer1001", 
    "sellers" : [
        
            "seller" : "razi@seller1001", 
            "items" : [
                
                    "item_name" : "Mizuno Wave Lightning Z3", 
                    "brand" : "Mizuno",
                    "status" : "Disabled"
                ,
                
                    "item_name" : "Mizuno Wave Fang SS", 
                    "brand" : "Mizuno",
                    "status" : "Disabled"
                
            ]
         
    ]

如何将所有项目状态更新为“启用”?

【问题讨论】:

嗨 Adfued Fufu Fued,欢迎来到 Stack Overflow。你能展示你迄今为止尝试过的东西,并指出它在哪里工作或不工作吗?您不应该在没有证明您已经尝试过自己寻找答案的情况下提出问题。 【参考方案1】:

对于 Mongo shell,你可以使用这个命令,

db.collection.find().forEach(function(doc) 
doc.sellers.forEach(function(list) 
    list.items.forEach(function(object) 
        object.status = "Enabled";
    );
);
db.collection.save(doc);
);

【讨论】:

以上是关于如何更新子文档mongodb的主要内容,如果未能解决你的问题,请参考以下文章