Použijte $set
operátor spolu s $
poziční operátor ve vaší aktualizaci pro změnu name
pole.
$
poziční operátor identifikuje správný prvek v poli, který se má aktualizovat, aniž by explicitně specifikoval polohu prvku v poli, takže vaše konečné prohlášení o aktualizaci by mělo vypadat takto:
db.collection.update(
{ "friends.u.username": "michael" },
{ "$set": { "friends.$.u.name": "hello" } }
)