MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment mettre à jour un sous-document dans mongodb

Vous devez utiliser l'opérateur $ pour mettre à jour un sous-document dans un tableau

Utiliser contacts.$ pointera mongoDB pour mettre à jour le sous-document pertinent.

db.users.update({_id: ObjectId("5500b5b8908520754a8c2420"), 
  "contacts._id": ObjectId("550199c6fe544adf50bc291e")}, 
 {"$set":{"contacts.$":myNewDocument}})

Je ne sais pas pourquoi vous modifiez le _id du sous-document. Ce n'est pas conseillé.

Si vous souhaitez modifier un champ particulier du sous-document, utilisez le contacts.$.<field_name> pour mettre à jour le champ particulier du sous-document.