MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Aktualisieren Sie das Array-Element in Mongo

Wenn mongodb ein Array-Feld abfragt, stellt es einen Positionsoperator $ bereit mit der Sie auf ein bestimmtes Element in diesem Array zugreifen können. Sie können einen elemMatch-Operator verwenden, um die Felder innerhalb eines Arrays von Objekten zu durchsuchen.

Beispiel:

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

Siehe:http://docs.mongodb.org/manual/reference/ operator/update/positional/