Не можете да зададете ограничение, когато използвате remove
или findAndModify
. Така че, ако искате точно да ограничите броя на премахнатите документи, ще трябва да го направите в две стъпки.
db.collectionName.find({}, {_id : 1})
.limit(100)
.sort({timestamp:-1})
.toArray()
.map(function(doc) { return doc._id; }); // Pull out just the _ids
След това предайте върнатия _id
s към метода за премахване:
db.collectionName.remove({_id: {$in: removeIdsArray}})
FYI:не можете да премахвате документи от ограничена колекция.