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

mongodb trække alle elementer fra arrayet

Det er ikke sådan $pullAll fungerer. Du kan ikke angive en matchende betingelse, du kan kun angive en række objekter, der skal slettes (der skal matche nøjagtigt).

Heldigvis kan du bruge $pull i stedet (som accepterer en matchende betingelse):

db.coll.update({
'_id': 1
},{
 $pull : {
  n.d : {
     $lte : new Date(2000, 10, 11)
   }
 }
})

Bemærk, at $pull også trækker alle elementer, der matcher, ikke kun ét.

Dette er ganske vist lidt forvirrende .




  1. mongo tilføje til indlejret array, hvis indtastningen ikke indeholder to felter, der matcher

  2. Filtrer efter land og fritekstsøg mongodb ved hjælp af mongoose

  3. Fejlen ved, at mongoid returnerer det første dokument, når det påberåbes sidst?

  4. Indsæt data til Meteor fra Facebook API