Consulta de período das últimas 24 horas no shell Mongo

15

Estou definindo uma tarefa cron para coletar resultados do gerenciador de banco de dados do MongoDB. Eu gostaria de coletar resultados dentro de um período de 24 horas. Eu pretendo executar o comando mongo com javascript .

A pergunta é, no shell Mongo , como eu escrevo uma consulta para encontrar um período de 24 horas atrás? Tal como:

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

Respostas:

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
fonte
4
Explique o que seu código faz e como ele é diferente do código visto na resposta aceita.
Dezso
1
db.collection.find(
        {$and: 
                [
                { "status.code":"DELIVERY_PENDING"},
                {"status.createdDtm": {$lte: new Date().getTime()-(1*60*60*1000) }}
                ]

        }
        )
rohit chaurasiya
fonte
Você deve adicionar detalhes sobre como isso funciona e por que ele resolve o problema.
Max Vernon
1
O que há com "DELIVERY_PENDING" ?!
Dan Dascalescu