Wenden Sie $set an -Operator zusammen mit $ Positionsoperator in Ihrem Update, um den name zu ändern Feld.
Das $ Der Positionsoperator identifiziert das richtige Element im Array, das aktualisiert werden soll, ohne die Position des Elements im Array explizit anzugeben, daher sollte Ihre endgültige Update-Anweisung wie folgt aussehen:
db.collection.update(
{ "friends.u.username": "michael" },
{ "$set": { "friends.$.u.name": "hello" } }
)