MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

NOW未満の日時値についてMongoDBにクエリしますか?


これには、新しいDate()とともに$lte演算子を使用できます。まず、ドキュメントを使用してコレクションを作成しましょう

>db.dateTimeValueLessThanNowDemo.insertOne({"CustomerName":"Larry","CustomerProductName":"Product-1","ArrivalDate":new ISODate("2017-01-31")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ca1e8ab66324ffac2a7dc59")
}
>db.dateTimeValueLessThanNowDemo.insertOne({"CustomerName":"Mike","CustomerProductName":"Product-2","ArrivalDate":new ISODate("2019-04-01")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ca1e8c166324ffac2a7dc5a")
}
>db.dateTimeValueLessThanNowDemo.insertOne({"CustomerName":"Chris","CustomerProductName":"Product-3","ArrivalDate":new ISODate("2019-03-31")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ca1e8d266324ffac2a7dc5b")
}
>db.dateTimeValueLessThanNowDemo.insertOne({"CustomerName":"Robert","CustomerProductName":"Product-4","ArrivalDate":new ISODate("2019-04-02")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ca1e8e766324ffac2a7dc5c")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです

> db.dateTimeValueLessThanNowDemo.find().pretty();

これにより、次の出力が生成されます

{
   "_id" : ObjectId("5ca1e8c166324ffac2a7dc5a"),
   "CustomerName" : "Mike",
   "CustomerProductName" : "Product-2",
   "ArrivalDate" : ISODate("2019-04-01T00:00:00Z")
}
{
   "_id" : ObjectId("5ca1e8d266324ffac2a7dc5b"),
   "CustomerName" : "Chris",
   "CustomerProductName" : "Product-3",
   "ArrivalDate" : ISODate("2019-03-31T00:00:00Z")
}
{
   "_id" : ObjectId("5ca1e8e766324ffac2a7dc5c"),
   "CustomerName" : "Robert",
   "CustomerProductName" : "Product-4",
   "ArrivalDate" : ISODate("2019-04-02T00:00:00Z")
}

以下は、NOW未満の日時値のクエリです。現在の日付が2019-04-02であるとしましょう

> db.dateTimeValueLessThanNowDemo.find({ ArrivalDate: { $lte: new Date() } }).pretty();

これにより、次の出力が生成されます

{
   "_id" : ObjectId("5ca1e8ab66324ffac2a7dc59"),
   "CustomerName" : "Larry",
   "CustomerProductName" : "Product-1",
   "ArrivalDate" : ISODate("2017-01-31T00:00:00Z")
}
{
   "_id" : ObjectId("5ca1e8c166324ffac2a7dc5a"),
   "CustomerName" : "Mike",
   "CustomerProductName" : "Product-2",
   "ArrivalDate" : ISODate("2019-04-01T00:00:00Z")
}
{
   "_id" : ObjectId("5ca1e8d266324ffac2a7dc5b"),
   "CustomerName" : "Chris",
   "CustomerProductName" : "Product-3",
   "ArrivalDate" : ISODate("2019-03-31T00:00:00Z")
}

  1. MongoDBで配列をクエリして、特定の値をフェッチします

    配列から特定の値をフェッチするには、$ projectとともにaggregate()を使用します。ドキュメントを使用してコレクションを作成しましょう- > db.demo761.insertOne( ...    { ...       "details": [ ...          { ...             "student": { ...     &nb

  2. MySQLで日時データ型のデフォルト値としてNOW()を設定するにはどうすればよいですか?

    動的デフォルトを使用して、now()関数をデフォルト値として設定できます。まず、データ型が「datetime」のテーブルを作成します。その後、以下に示すように、列「MyTime」のデフォルト値としてnow()を設定します。 テーブルを作成します。 mysql> create table DefaultDateTimeDemo -> ( -> MyTime datetime default CURRENT_TIMESTAMP -> ); Query OK, 0 rows affected (0.59 sec) 上記のテーブルを作成した後、挿入コマ