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