sql >> Databasteknik >  >> NoSQL >> MongoDB

Finns det något sätt att visa tidsstämpel i unix-format till ISODate?

Bakgrund

  • En unixtime värdet representerar sekunder sedan epoken (1 jan 1970).

  • En JavaScript Date() representerar millisekunder sedan epoken.

  • I MongoDB, ISODate() är ett bekvämlighetsomslag för Date() som låter dig skapa datum från ISO-strängar i mongo skal. Om du använder new Date() i skalet returnerar den en ISODate() .

Konvertering

Att konvertera mellan en unixtime och en ISODate() kan du multiplicera dina unix-tidsstämplar med 1000 och skicka detta värde till new Date() konstruktör.

Ett enkelt exempel i mongo skal:

> 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")


  1. MongoDB $ och operatörsfråga i PHP

  2. MongoDB kan inte använda delen för att korsa element

  3. MongoDB fyll i data som inte ingår i frågeresultatet

  4. Numeriskt samlingsnamn Ta bort