如何在mongodb中更新多个元素的数组..?

时间:2014-08-11 09:22:39

标签: arrays mongodb

我需要更新多个元素的数组。我的收集方式如下

{
"_id" : ObjectId("53e87e239ae974e6a0a81004"),
"name" : "mulagala",
"notifications" : [
    {
        "name" : "apple",
        "status" : 0
    },
    {
        "name" : "microsoft",
        "status" : 0
    },
    {
        "name" : "android",
        "status" : 0
    }
]
}

现在我想更改数组的每个status元素应该更改为1,即。status:1只有一个查询。

我尝试了以下方式

db.mystatus.update({'notifications.status':0},{$set:{'notifications.$.status':1}},false,true)

但是第一条记录只是更新,该怎么做。任何帮助都会得到满足!

1 个答案:

答案 0 :(得分:1)

您是否尝试使用$ operator数组更新数组元素?目前,它只更新一个元素,因为索引编码为0。