MongoDB ObjectId நேர முத்திரை ↔ ObjectId மாற்றி

ஒவ்வொரு MongoDB ObjectId-ம் அதன் உருவாக்க நேரத்தின் உள்ளமைக்கப்பட்ட நேர முத்திரையைக் கொண்டுள்ளது என்பது உங்களுக்குத் தெரியுமா?
மங்கோ ஷெல்லில் இருந்து, ObjectId-இலிருந்து நேர முத்திரையைப் பெற getTimestamp() ஐப் பயன்படுத்தலாம், ஆனால் நேர முத்திரையிலிருந்து ObjectId-ஐ உருவாக்க உள்ளமைக்கப்பட்ட செயல்பாடு எதுவும் இல்லை.
இந்த ஆன்லைன் மாற்றி நேர முத்திரையை ObjectId-க்கு மாற்றும் மற்றும் திரும்பவும்.

ObjectId

(குறிப்பு: தனித்துவமானது அல்ல, ஒப்பீடுகளுக்கு மட்டுமே பயன்படுத்தவும், புதிய ஆவணங்களை உருவாக்க வேண்டாம்!)

மங்கோ ஷெல்லில் ஒட்டுவதற்கான ObjectId

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