MongoDB ObjectId Ժամանակի դրոշմ ↔ ObjectId փոխարկիչ
Գիտեի՞ք, որ յուրաքանչյուր MongoDB ObjectId պարունակում է իր ստեղծման ժամանակի ներկառուցված ժամանակի դրոշմ:
Mongo շելլից կարող եք օգտագործել getTimestamp() ֆունկցիան՝ ObjectId-ից ժամանակի դրոշմը վերականգնելու համար, սակայն չկա ներկառուցված ֆունկցիա ժամանակի դրոշմից ObjectId ստեղծելու համար:
Այս առցանց փոխարկիչը կփոխարկի ժամանակի դրոշմը ObjectId-ի և հակառակը:
ObjectId
(ՆՇՈՒՄ. եզակի չէ, օգտագործեք միայն համեմատությունների համար, ոչ թե նոր փաստաթղթեր ստեղծելու համար!)
ObjectId mongo շելլում տեղադրելու համար
Time (UTC)
Տարի (4 թվանշան)
Ամիս (1 - 12)
Օր (1 - 31)
Ժամ (0 - 23)
Րոպե (0 - 59)
Վայրկյան (0 - 59)
ISO ժամանակի դրոշմ
Ինչո՞ւ ստեղծել ObjectId ժամանակի դրոշմից:
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); };