MongoDB ObjectId Convertidor de Marca de Tiempo ↔ ObjectId
¿Sabías que cada ObjectId de MongoDB contiene una marca de tiempo incrustada de su momento de creación?
Desde el shell de mongo, puedes usar getTimestamp() para recuperar la marca de tiempo del ObjectId, pero no hay una función incorporada para generar un ObjectId a partir de una marca de tiempo.
Este convertidor en línea convertirá la marca de tiempo a un ObjectId y viceversa.
ObjectId
(NOTA: no es único, úsalo solo para comparaciones, ¡no para crear nuevos documentos!)
ObjectId para pegar en el shell de mongo
Time (UTC)
Año (4 dígitos)
Mes (1 - 12)
Día (1 - 31)
Hora (0 - 23)
Minuto (0 - 59)
Segundo (0 - 59)
Marca de tiempo ISO
¿Por qué generar un ObjectId a partir de una marca de tiempo?
Para encontrar todos los comentarios creados después del 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); };