Nie możesz ustawić limitu podczas używania remove
lub findAndModify
. Jeśli więc chcesz precyzyjnie ograniczyć liczbę usuwanych dokumentów, musisz to zrobić w dwóch krokach.
db.collectionName.find({}, {_id : 1})
.limit(100)
.sort({timestamp:-1})
.toArray()
.map(function(doc) { return doc._id; }); // Pull out just the _ids
Następnie przekaż zwrócony _id
s do metody usuwania:
db.collectionName.remove({_id: {$in: removeIdsArray}})
FYI:nie możesz usunąć dokumentów z ograniczonej kolekcji.