MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Atualizar elemento de matriz no mongo


Quando o mongodb consulta um campo de array, ele fornece um operador posicional $ que você pode usar para acessar um elemento específico nessa matriz. Você pode usar um operador elemMatch para pesquisar os campos em uma matriz de objetos.

Exemplo:
db.myCollection.find({
   _id: ObjectId("53b1a44350f148976b0b6044"),
   myArray: {
      $elemMatch: {key1: 'somevalue'}
   }
}, {
   $set:{
      'myArray.$.key2': 'someOtherValue'
   }
});

Consulte:http://docs.mongodb.org/manual/reference/ operador/atualização/posicional/