MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment puis-je extraire la date de création d'un Mongo ObjectID

getTimestamp()

La fonction dont vous avez besoin est celle-ci, elle est déjà incluse pour vous dans le shell :

ObjectId.prototype.getTimestamp = function() {
    return new Date(parseInt(this.toString().slice(0,8), 16)*1000);
}

Références

Consultez cette section dans la documentation :

  • Extraire les heures d'insertion de _id plutôt que d'avoir un champ d'horodatage séparé

Ce test unitaire démontre également la même chose :

  • mongo / jstests / objid6.js

Exemple utilisant le shell Mongo :

> db.col.insert( { name: "Foo" } );
> var doc = db.col.findOne( { name: "Foo" } );
> var timestamp = doc._id.getTimestamp();

> print(timestamp);
Wed Sep 07 2011 18:37:37 GMT+1000 (AUS Eastern Standard Time)

> printjson(timestamp);
ISODate("2011-09-07T08:37:37Z")