หากต้องการจับคู่วันที่ ให้ใช้ $match พร้อมกับ aggregate() ให้เราสร้างคอลเลกชันที่มีเอกสาร -
> db.demo491.insertOne({"ShippingDate":new ISODate("2020-01-10")});{ "acknowledged" : true, "insertedId" : ObjectId("5e849a09b0f3fa88e22790be") } > db.demo491.insertOne({"ShippingDate":new ISODate("2020-02-21")});{ "acknowledged" : true, "insertedId" : ObjectId("5e849a0eb0f3fa88e22790bf") } > db.demo491.insertOne({"ShippingDate":new ISODate("2020-03-23")});{ "acknowledged" : true, "insertedId" : ObjectId("5e849a1db0f3fa88e22790c0") } > db.demo491.insertOne({"ShippingDate":new ISODate()});{ "acknowledged" : true, "insertedId" : ObjectId("5e849a28b0f3fa88e22790c1") }
แสดงเอกสารทั้งหมดจากคอลเล็กชันโดยใช้วิธี find() -
> db.demo491.find();
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e849a09b0f3fa88e22790be"), "ShippingDate" : ISODate("2020-01- 10T00:00:00Z") } { "_id" : ObjectId("5e849a0eb0f3fa88e22790bf"), "ShippingDate" : ISODate("2020-02- 21T00:00:00Z") } { "_id" : ObjectId("5e849a1db0f3fa88e22790c0"), "ShippingDate" : ISODate("2020-03- 23T00:00:00Z") } { "_id" : ObjectId("5e849a28b0f3fa88e22790c1"), "ShippingDate" : ISODate("2020-04- 01T13:42:00.090Z") }
ต่อไปนี้เป็นแบบสอบถามเพื่อจับคู่วันที่กับ $match โดยใช้ MongoDB -
> db.demo491.aggregate([ ... { ... '$match' : { 'ShippingDate' : { '$gte' : ISODate('2020-02-24T18:10:11.000Z') } } ... } ... ]);
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
{ "_id" : ObjectId("5e849a1db0f3fa88e22790c0"), "ShippingDate" : ISODate("2020-03- 23T00:00:00Z") } { "_id" : ObjectId("5e849a28b0f3fa88e22790c1"), "ShippingDate" : ISODate("2020-04- 01T13:42:00.090Z") }