MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come eliminare N numeri di documenti in mongodb

Non puoi impostare un limite quando usi remove o findAndModify . Quindi, se vuoi limitare con precisione il numero di documenti rimossi, dovrai farlo in due passaggi.

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

Quindi passa il _id restituito s al metodo di rimozione:

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

FYI:non puoi rimuovere documenti da una raccolta limitata.