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

月と日のみを使用して日付レコードを検索するMongoDBクエリ


月と日のみを使用して検索するには、$whereを使用します。ドキュメントを使用してコレクションを作成しましょう-

> db.demo181.insertOne({"ShippingDate":new ISODate("2020-01-10")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e398a699e4f06af551997fe")
}
> db.demo181.insertOne({"ShippingDate":new ISODate("2019-12-11")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e398a729e4f06af551997ff")
}
> db.demo181.insertOne({"ShippingDate":new ISODate("2018-01-10")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e398a7d9e4f06af55199800")
}
> db.demo181.insertOne({"ShippingDate":new ISODate("2020-10-12")});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e398a879e4f06af55199801")
}

find()メソッドを使用してコレクションからすべてのドキュメントを表示する-

> db.demo181.find();

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

{ "_id" : ObjectId("5e398a699e4f06af551997fe"), "ShippingDate" : ISODate("2020-01-10T00:00:00Z") }
{ "_id" : ObjectId("5e398a729e4f06af551997ff"), "ShippingDate" : ISODate("2019-12-11T00:00:00Z") }
{ "_id" : ObjectId("5e398a7d9e4f06af55199800"), "ShippingDate" : ISODate("2018-01-10T00:00:00Z") }
{ "_id" : ObjectId("5e398a879e4f06af55199801"), "ShippingDate" : ISODate("2020-10-12T00:00:00Z") }

以下は、月と日で検索するクエリです-

> db.demo181.find({$where : function() { return this.ShippingDate.getMonth() == 1 || this.ShippingDate.getDate() == 10} })

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

{ "_id" : ObjectId("5e398a699e4f06af551997fe"), "ShippingDate" : ISODate("2020-01-10T00:00:00Z") }
{ "_id" : ObjectId("5e398a7d9e4f06af55199800"), "ShippingDate" : ISODate("2018-01-10T00:00:00Z") }

  1. MySQLで現在の日付と月を比較する日付レコードを取得します

    これには、MONTH()とDAY()を使用します。まず、-を作成しましょう mysql> create table DemoTable1429    -> (    -> AnniversaryDate date    -> ); insert-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1429 values('2019-09-29'); Query OK, 1 row affected (0.09 sec) mysql

  2. 曜日を含む日付レコードを減算し、レコードを含む曜日を表示するMySQLクエリ

    これには、DATE_FORMAT()を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1820      (      AdmissionDate varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1820 values('20/10/2019