Consulta de rango de fechas durante las últimas 24 horas en Mongo Shell

15

Estoy configurando un trabajo cron para recopilar resultados del generador de perfiles de base de datos MongoDB. Me gustaría recopilar resultados dentro de un período de 24 horas. Planeo ejecutar el comando mongo con javascript .

La pregunta es, en Mongo Shell , ¿cómo escribo una consulta para encontrar un rango de fechas de hace 24 horas? Como:

db.system.profile.find({
    "timestamp" : {
        $lte : <current date & time>,
        $gt : <date & time 24 hrs ago>
    }
})
Howard Lee
fuente

Respuestas:

4
db.system.profile.find({ 
 "timestamp" : 
    {     
        $gte:   new Date(new Date().setHours(00,00,00)) ,     
        $lt :  new Date(new Date().setHours(23,59,59)) 
   } 
})
Thxer
fuente
44
Explique qué hace su código y en qué se diferencia del código que se ve en la respuesta aceptada.
dezso
1
db.collection.find(
        {$and: 
                [
                { "status.code":"DELIVERY_PENDING"},
                {"status.createdDtm": {$lte: new Date().getTime()-(1*60*60*1000) }}
                ]

        }
        )
rohit chaurasiya
fuente
Debe agregar detalles sobre cómo funciona esto y por qué soluciona el problema.
Max Vernon
1
¿Qué pasa con "DELIVERY_PENDING"?
Dan Dascalescu