MongoDB ObjectId タイムスタンプ ↔ ObjectId コンバーター

各MongoDB ObjectIdには作成時刻の埋め込みタイムスタンプが含まれていることをご存知ですか?
mongoシェルから、getTimestamp()を使用してObjectIdからタイムスタンプを取得できますが、タイムスタンプからObjectIdを生成する組み込み関数はありません。
このオンラインコンバーターは、タイムスタンプをObjectIdに、そしてその逆に変換します。

ObjectId

(注意:一意ではありません。比較用にのみ使用し、新しいドキュメントの作成には使用しないでください!)

mongoシェルに貼り付ける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);
};