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

MongoDB - Mettre à jour un objet dans un tableau imbriqué

Appliquer le $set opérateur avec le $ opérateur positionnel dans votre mise à jour pour changer le name domaine.

Le $ l'opérateur positionnel identifiera l'élément correct dans le tableau à mettre à jour sans spécifier explicitement la position de l'élément dans le tableau, ainsi votre instruction de mise à jour finale devrait ressembler à :

db.collection.update(
    { "friends.u.username": "michael" }, 
    { "$set": { "friends.$.u.name": "hello" } }
)