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

Come posso rimuovere i record più vecchi da una raccolta in MongoDB?

Per rimuovere i documenti prima di Date, il tuo comando dovrebbe essere:

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

Per rimuovere i record prima 1 ottobre 2017, il comando sarà:

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

Ottobre è il decimo mese. Se il campo del mese è indicizzato a zero, utilizziamo 9, altrimenti utilizziamo 10.

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

Questo rimuoverà tutti i record più vecchi di sette giorni :

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

Aggiornamento: collection.remove è obsoleto