MongoDB ObjectId Tydstempel ↔ ObjectId-omskakelaar
Weet jy dat elke MongoDB ObjectId een ingesluit tydstempel van sy aanmaakdatum bevat?
Vanuit die mongo-shell, kan je gebruik maak van getTimestamp() om die tydstempel uit die ObjectId te trek, maar daar is geen ingeboude funksie om een ObjectId uit een tydstempel te genereer.
Deze online-omskakelaar sal die tydstempel om na ObjectId en terug skakel.
ObjectId
(WAARS: nie uniek nie, slegs vir vergelykings gebruik, nie vir het maken van nieuwe dokumente!)
ObjectId om in die mongo-shell te plak
Time (UTC)
Jaar (4 cijfers)
Maand (1 - 12)
Dag (1 - 31)
Uur (0 - 23)
Minuut (0 - 59)
Seconde (0 - 59)
ISO Tydstempel
Hoekom ObjectId uit tydstempel genereer?
Om al die kommentare te vind wat na 01/11/2013 is gemaak:
db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
Javascript functions
var objectIdFromDate = function (date) { return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000"; }; var dateFromObjectId = function (objectId) { return new Date(parseInt(objectId.substring(0, 8), 16) * 1000); };