remove
を使用する場合は制限を設定できません またはfindAndModify
。したがって、削除するドキュメントの数を正確に制限する場合は、2つのステップで行う必要があります。
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}})
参考:上限のあるコレクションからドキュメントを削除することはできません。