sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB $pull array 2 úrovně

Nepotřebujete úplný zápis, protože zástupný symbol se již přesunul na tuto pozici v poli.

db.junk.update(
    { "commandes.voyagesSouscrits.idVoyage": "123" },
    {$pull: { "commandes.$.voyagesSouscrits": { idVoyage: "123" } }}
)

Tato část:

idVoyage: { <query> }

je potřeba pouze proto, že poziční operátor v "commandes.$.voyagesSouscrits “ může odpovídat pouze prvnímu pozice pole nalezená v dotazu.

http://docs.mongodb.org/manual/reference/operator/projection/positional/

Doufám, že to vyjasní.




  1. Proč je MongoDB tak rychlý

  2. Trendy NoSQL – MongoDB, Cassandra, CouchDB a Riak

  3. 3 způsoby, jak skrýt index z plánu dotazů v MongoDB

  4. MongoDB - Import dat