Ce n'est pas ainsi que $pullAll fonctionne. Vous ne pouvez pas spécifier de condition de correspondance, vous ne pouvez spécifier qu'un tableau d'objets à supprimer (qui doivent correspondre exactement).
Heureusement, vous pouvez utiliser $pull à la place (qui accepte une condition correspondante) :
db.coll.update({
'_id': 1
},{
$pull : {
n.d : {
$lte : new Date(2000, 10, 11)
}
}
})
Notez que $pull tire également tous des éléments qui correspondent, pas un seul.
C'est certes un peu déroutant .