sql >> データベース >  >> NoSQL >> MongoDB

MongoObjectIDから作成日を抽出するにはどうすればよいですか

    getTimestamp()

    必要な関数はこれです。これはすでにシェルに含まれています:

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

    参考資料

    ドキュメントからこのセクションをチェックしてください:

    • 個別のタイムスタンプフィールドを使用するのではなく、_idから挿入時間を抽出します

    この単体テストでも同じことが実証されています:

    • mongo / jstests / objid6.js

    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")
    


    1. MongoDBのプロパティをテキスト型から日付型に変換するにはどうすればよいですか?

    2. SQLでグループの最大値を持つ行を選択する5つの方法

    3. MongoDB $ cos

    4. MongoDBおよびC#:大文字と小文字を区別しない検索