$pullAll не работи така. Не можете да посочите условие за съвпадение, можете само да посочите масив от обекти за изтриване (които трябва да съвпадат точно).
За щастие можете да използвате вместо това $pull (което приема условие за съвпадение):
db.coll.update({
'_id': 1
},{
$pull : {
n.d : {
$lte : new Date(2000, 10, 11)
}
}
})
Имайте предвид, че $pull също изтегля всички съвпадащи елементи, а не само един.
Това е наистина малко объркващо .