如何在mongoDB中更新单个数组的多个元素

时间:2018-10-09 05:12:31

标签: mongodb

我有一个mongoDb文件,如下所示:

{
  _id: "c4bYJWz42T2JzbmHh",
  DATA:[
      {sno:1, name: xyz, country: xyz},
      {sno:2, name: xyz1, country: xyz1},
      {sno:3, name: xyz2, country: xyz2}
  ]
}

现在我想基于'sno'更新名称和国家。我已经使用了这种方法

ExampleDb.update({
        _id: data.id
      }, {
        $set: {
            "DATA.$[elem].name": data.name ,
            "DATA.$[elem].country" :data.country 
          }
        },
     {
       arrayFilters: [ { "elem.sno": data.sno } ]
     });

ut似乎很疲倦,因为它显示以下错误。

Exception while invoking method 'ExampleDb.update' MongoError: Modifiers operate on fields but we found a Array instead.

0 个答案:

没有答案