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

MongoDB Date()メソッド

    MongoDBでは、Date() メソッドは、文字列またはDateオブジェクトとして日付を返します。

    • Date()と呼ぶ場合 、現在の日付をmongoの文字列として返します シェル。
    • new Date()と呼ぶ場合 、現在の日付をDateオブジェクトとして返します。

    new Date()の引数として特定の日付を指定することもできます 、その日付を使用するようにします。

    例– Date()

    ドキュメントをコレクションに挿入し、Date()を使用する例を次に示します。 フィールドの1つの値として:

    db.dogs.insert(
      { 
        "_id" : 1,
        "name" : "Fetch", 
        "lastModified" : Date()
      }
    )

    そのコードを実行した後、結果のドキュメントを見ることができます:

    db.dogs.find().pretty()

    結果:

    {
    	"_id" : 1,
    	"name" : "Fetch",
    	"lastModified" : "Wed Jan 27 2021 10:15:53 GMT+1000 (AEST)"
    }

    lastModified 日付フィールドは、値として日付文字列を使用します。

    例– new Date()

    前述のように、日付文字列の代わりに日付オブジェクトを返す場合は、new Date()を使用します。 。

    例:

    db.dogs.insert(
      { 
        "_id" : 2,
        "name" : "Wag", 
        "lastModified" : new Date()
      }
    )

    Date()を前に付けるだけです new 結果として、日付文字列ではなくDateオブジェクトになります。

    それでは、ドキュメントのコレクションをもう一度確認しましょう:

    db.dogs.find().pretty()

    結果:

    {
    	"_id" : 1,
    	"name" : "Fetch",
    	"lastModified" : "Wed Jan 27 2021 10:15:53 GMT+1000 (AEST)"
    }
    {
    	"_id" : 2,
    	"name" : "Wag",
    	"lastModified" : ISODate("2021-01-27T00:19:08.862Z")
    }

    2番目のドキュメントの日付がISODate()でラップされていることがわかります。 ヘルパー。 ISODateはUTCです。

    特定の日付を提供する

    Date()を呼び出すときに、独自の日付を指定できます メソッド。

    これを行うには、包括的範囲0内の年を含むISO-8601日付文字列を渡します。 9999まで new Date()へ コンストラクターまたはISODate() 働き。

    これが例です。

    db.dogs.update(
      { "_id" : 1 },
      { $set : { "born" : new Date( "2020-10-07" ) } }
    )

    それでは、ドキュメントを確認しましょう:

    db.dogs.find( { "_id": 1 } ).pretty()

    結果:

    {
    	"_id" : 1,
    	"name" : "Fetch",
    	"lastModified" : "Wed Jan 27 2021 10:15:53 GMT+1000 (AEST)",
    	"born" : ISODate("2020-10-07T00:00:00Z")
    }

    生まれたフィールドが追加され、指定された日付に設定されていることがわかります。

    次の形式で日付を指定できます。

    フォーマット 説明
    YYYY-mm-dd ISODateを返します 指定された日付で。
    YYYY-mm-ddTHH:MM:ss クライアントのローカルタイムゾーンで日時を指定し、ISODateを返します UTCで指定された日時を使用します。
    YYYY-mm-ddTHH:MM:ssZ UTCで日時を指定し、ISODateを返します UTCで指定された日時を使用します。
    整数 値として整数を指定することもできます。これを行うと、Unixエポック(1970年1月1日)からのミリ秒として日時が指定され、結果のISODateが返されます。 インスタンス。

    Unix Epoch

    new Date()の引数として整数を指定する例を次に示します。 。

    これを行うと、Unixエポック(1970年1月1日)からのミリ秒として日時が指定され、結果のISODateが返されます。 インスタンス。

    db.dogs.update(
      { "_id" : 2 },
      { $set : { "born" : new Date( 1601207768012 ) } }
    )

    それでは、ドキュメントを確認しましょう:

    db.dogs.find( { "_id": 2 } ).pretty()

    結果:

    {
    	"_id" : 2,
    	"name" : "Wag",
    	"lastModified" : ISODate("2021-01-27T00:19:08.862Z"),
    	"born" : ISODate("2020-09-27T11:56:08.012Z")
    }


    1. redisキーを保存するための最良の方法

    2. Redisインスタンスへの参照をGorilla/Muxハンドラーに渡します

    3. スプリングブートを使用してmongodbの自動生成フィールドを作成するにはどうすればよいですか?

    4. jsonファイルをmongodbに挿入します