MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

mongodb zieht alle Elemente aus dem Array

So funktioniert $pullAll nicht. Sie können keine Übereinstimmungsbedingung angeben, Sie können nur ein Array von zu löschenden Objekten angeben (die exakt übereinstimmen müssen).

Glücklicherweise können Sie stattdessen $pull verwenden (was eine übereinstimmende Bedingung akzeptiert):

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

Beachten Sie, dass $pull auch alle zieht Elemente, die übereinstimmen, nicht nur eines.

Das ist zugegebenermaßen etwas verwirrend .