sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur kan jag ta bort äldre poster från en samling i MongoDB?

För att ta bort dokument före Datum bör ditt kommando vara:

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

För att ta bort poster före 1 oktober 2017 kommer kommandot att vara:

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

Oktober är den 10:e månaden. Om månadsfältet är nollindexerat, så använder vi 9, annars använder vi 10.

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

Detta tar bort alla poster som är äldre än sju dagar :

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

Uppdatering: collection.remove är utfasad



  1. Finns det en golvfunktion i Mongodbs aggregeringsramverk?

  2. Varför använda Redis istället för MongoDb för cachelagring?

  3. Bulkinsats i MongoDB med mungo

  4. Hur utför man uppdateringsoperationer i GridFS (med Java)?