MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment supprimer N nombres de documents dans mongodb

Vous ne pouvez pas définir de limite lorsque vous utilisez remove ou findAndModify . Ainsi, si vous souhaitez limiter précisément le nombre de documents supprimés, vous devrez le faire en deux étapes.

db.collectionName.find({}, {_id : 1})
    .limit(100)
    .sort({timestamp:-1})
    .toArray()
    .map(function(doc) { return doc._id; });  // Pull out just the _ids

Passez ensuite le _id renvoyé s à la méthode remove :

db.collectionName.remove({_id: {$in: removeIdsArray}})

Pour info :vous ne pouvez pas supprimer des documents d'une collection plafonnée.