MongoDB ObjectId Convertisseur Horodatage ↔ ObjectId

Saviez-vous que chaque ObjectId MongoDB contient un horodatage intégré de son moment de création ?
Depuis le shell mongo, vous pouvez utiliser getTimestamp() pour récupérer l'horodatage de l'ObjectId, mais il n'y a pas de fonction intégrée pour générer un ObjectId à partir d'un horodatage.
Ce convertisseur en ligne convertira l'horodatage en ObjectId et vice versa.

ObjectId

(NOTE : non unique, à utiliser uniquement pour des comparaisons, pas pour créer de nouveaux documents !)

ObjectId à coller dans le shell mongo

Time (UTC)

Année (4 chiffres)
Mois (1 - 12)
Jour (1 - 31)
Heure (0 - 23)
Minute (0 - 59)
Seconde (0 - 59)
Horodatage ISO

Pourquoi générer un ObjectId à partir d'un horodatage ?

Pour trouver tous les commentaires créés après le 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);
};