MongoDB ObjectId Конвертор на времеви печат ↔ ObjectId

Знаехте ли, че всеки MongoDB ObjectId съдържа вграден времеви печат на времето на създаването си?
От mongo shell можете да използвате getTimestamp(), за да извлечете времевия печат от ObjectId, но няма вградена функция за генериране на ObjectId от времеви печат.
Този онлайн конвертор ще преобразува времевия печат в ObjectId и обратно.

ObjectId

(ЗАБЕЛЕЖКА: не е уникален, използвайте само за сравнения, не за създаване на нови документи!)

ObjectId за поставяне в mongo shell

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);
};