MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie kann ich ältere Datensätze aus einer Sammlung in MongoDB entfernen?

Um Dokumente vor Date zu entfernen, sollte Ihr Befehl lauten:

db.collection.deleteMany( { orderExpDate : {"$lt" : new Date(YEAR, MONTH, DATE) } })

Zum Entfernen von Datensätzen vorher Am 1. Oktober 2017 lautet der Befehl:

db.collection.deleteMany( { orderExpDate : {"$lt" : new Date(2017, 9, 1) } })

Oktober ist der 10. Monat. Wenn das Monatsfeld mit Null indiziert ist, verwenden wir 9, andernfalls 10.

.........................

Dadurch werden alle Datensätze entfernt, die älter als sieben Tage sind :

db.collection.deleteMany( { orderExpDate : {"$lt" : new Date(Date.now() - 7*24*60*60 * 1000) } })

Aktualisierung: collection.remove ist veraltet