MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Existe uma maneira de exibir o carimbo de data/hora no formato unix para ISODate?

Plano de fundo


  • Um unixtime valor representa segundos desde a época (1 de janeiro de 1970).

  • Um JavaScript Date() representa milissegundos desde a época.

  • No MongoDB, ISODate() é um wrapper de conveniência para Date() que permite criar datas a partir de strings ISO no mongo Concha. Se você usar new Date() no shell, ele retornará um ISODate() .

Conversão


Para converter entre um unixtime e um ISODate() você pode multiplicar seus timestamps unix por 1000 e passar esse valor para o new Date() construtor.

Um exemplo simples no mongo escudo:

> db.mydata.insert({
    unixtime: 1362143511
})

> var doc = db.mydata.findOne();

// convert unixtime seconds to milliseconds and create JS date
> var date = new Date(doc.unixtime * 1000);

> date
ISODate("2013-03-01T13:11:51Z")