Du kan ikke sætte en grænse, når du bruger remove
eller findAndModify
. Så hvis du ønsker at begrænse antallet af fjernede dokumenter præcist, skal du gøre det i to trin.
db.collectionName.find({}, {_id : 1})
.limit(100)
.sort({timestamp:-1})
.toArray()
.map(function(doc) { return doc._id; }); // Pull out just the _ids
Send derefter den returnerede _id
s til fjernelsesmetoden:
db.collectionName.remove({_id: {$in: removeIdsArray}})
FYI:du kan ikke fjerne dokumenter fra en begrænset samling.