MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Aggiorna un elemento in una matrice che si trova in una matrice

Devi usare questa query (apparentemente equivalente):

db.mycollection.update({"sessions.0.issues": {$elemMatch: {id: <yourValue>}}}, {$set: {"sessions.0.issues.$.text": "newText"}})

Nota che la tua espressione di aggiornamento era corretta.

Maggiori informazioni su $elemMatch .

A proposito, il riferimento MongoDB esplicita che l'operatore $ non funziona "con query che attraversano array nidificati".

Importante :$elemMatch funziona solo con la versione 4 o successiva.