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

Inserisci nell'array di oggetti MongoDB

se ho capito bene la tua domanda, vuoi abbinare name campo con we chiave e aggiorna arr solo se esiste ?, devi usare elemMatch, in altri per ottenere il documento giusto

db.test.update({ list: { $elemMatch: { name: "We" , arr: { $nin: [ "valuette" ] }} } }, {  $push: { "list.$.arr": "valuette" } } );

il $ in "list.$.arr" corrisponde all'indice specificato che corrisponde a name campo con we valore

aggiornamento:per rispondere alla domanda OP