MongoDB ObjectId Konvertor časovej pečiatky ↔ ObjectId
Vedeli ste, že každé MongoDB ObjectId obsahuje vloženú časovú pečiatku svojho času vytvorenia?
Z mongo shellu môžete použiť getTimestamp() na získanie časovej pečiatky z ObjectId, ale neexistuje žiadna vstavaná funkcia na generovanie ObjectId z časovej pečiatky.
Tento online konvertor prevedie časovú pečiatku na ObjectId a späť.
ObjectId
(POZNÁMKA: nie je unikátne, používajte len na porovnania, nie na vytváranie nových dokumentov!)
ObjectId na vloženie do mongo shellu
Time (UTC)
Rok (4 číslice)
Mesiac (1 - 12)
Deň (1 - 31)
Hodina (0 - 23)
Minúta (0 - 59)
Sekunda (0 - 59)
ISO časová pečiatka
Prečo generovať ObjectId z časovej pečiatky?
Na nájdenie všetkých komentárov vytvorených po 2013-11-01:
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); };