Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Query não encontra por data específica

A query do exercício não encontra a data cadastrada no banco:

Banco: escola

Collection: alunos

MongoDB versão 4.4.1

No banco está assim:
nome:"Felipe"
data_nascimento:1994-02-26T03:00:00.000+00:00
A query que eu estou executando é a do exercício:
> db.alunos.find({"nome": "Felipe", "data_nascimento": new Date(1994, 02, 26)})
3 respostas

Olá Raphael, tudo bem?

O Helio informou o mesmo problema que você neste tópico e ele já informou como conseguiu executar essa query com a data, você poderia dar uma olhada neste tópico, e falar pra gente se ajudou e se você entendeu tudo certinho?!

Aguardo o seu retorno!

solução!

Acredito que não seja o mesmo problema, pois eu estou procurando pelo mês 02, e não 12.

Pelo que eu pesquisei não tem como encontrar uma data específica passando apenas dia, mês e ano, pois se ela tiver horário teremos que passar exatamente o mesmo horário na busca. A busca por data sem passar horário só funciona para períodos.

Uma saída que encontrei foi a seguinte: {"data_nascimento": {$gte: new Date('1975-10-28'), $lt: new Date('1975-10-29')}}

Que bom Raphael que você encontrou uma outra forma, mas neste caso você poderia apenas substituir os dados que o Hélio utilizou neste exemplo:

db.alunos.find({ "nome" : "Helio", "data_nascimento" : ISODate("1990-12-27T02:00:00Z"), })

Pelos dados que você deseja utilizar, dessa forma:


db.alunos.find({ "nome" : "Felipe", "data_nascimento" :ISODate("1994-03-26T03:00:00Z"), })

Busca com no utilizando o ISODATE

Espero ter ajudado e bons estudos!