sql >> Database >  >> NoSQL >> MongoDB

Is er een manier om het tijdstempel in Unix-formaat weer te geven aan ISODate?

Achtergrond

  • Een unixtime waarde staat voor seconden sinds het tijdperk (1 jan. 1970).

  • Een JavaScript-datum() staat voor milliseconden sinds het tijdperk.

  • In MongoDB, ISODate() is een gemakswrapper voor Date() waarmee u datums kunt maken van ISO-reeksen in de mongo schelp. Als u new Date() . gebruikt in de shell, retourneert het een ISODate() .

Conversie

Omzetten tussen een unixtime en een ISODate() kunt u uw Unix-tijdstempels vermenigvuldigen met 1000 en deze waarde doorgeven aan de new Date() constructeur.

Een eenvoudig voorbeeld in de mongo schaal:

> 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. mangoest Datum vergelijken zonder tijd en groeperen op meerdere eigenschappen?

  2. Zoeken in Objectwaarde afdeling.naam

  3. Een MongoDB-verzameling exporteren naar een JSON-bestand

  4. Mongoose maakt geen indexen