MongoDB-এ তারিখের রেঞ্জ দিয়ে ডকুমেন্ট ফিল্টার করতে Date অবজেক্ট এবং $gte (greater than or equal) অপারেটর ব্যবহার করা হয়।
কারেন্ট ডেট (উদাহরণে)
> new Date();
ISODate("2019-05-14T08:32:42.773Z")
নমুনা ডেটা তৈরি (বিভিন্ন তারিখ)
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-01")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e0") }
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-02")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e1") }
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-08")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e2") }
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-07")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e3") }
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-09")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e4") }
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-04-26")});
{ "acknowledged": true, "insertedId": ObjectId("5cda7dc4bf3115999ed511e5") }
সব ডকুমেন্ট দেখুন
> db.findObectInLastWeekDemo.find().pretty();আউটপুট:
{
"_id": ObjectId("5cda7dc4bf3115999ed511e0"),
"ShippingDate": ISODate("2019-05-01T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e1"),
"ShippingDate": ISODate("2019-05-02T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e2"),
"ShippingDate": ISODate("2019-05-08T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e3"),
"ShippingDate": ISODate("2019-05-07T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e4"),
"ShippingDate": ISODate("2019-05-09T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e5"),
"ShippingDate": ISODate("2019-04-26T00:00:00Z")
}
গত ৭ দিনের ডকুমেন্ট খোঁজার কোয়েরি
new Date() - 7 * 60 * 60 * 24 * 1000 = ৭ দিন আগের মিলিসেকেন্ড।
> db.findObectInLastWeekDemo.find({
ShippingDate: {$gte: new Date(new Date() - 7 * 60 * 60 * 24 * 1000)}
});
আউটপুট (৮ এবং ৯ মে-এর ডকুমেন্ট):
{
"_id": ObjectId("5cda7dc4bf3115999ed511e2"),
"ShippingDate": ISODate("2019-05-08T00:00:00Z")
}
{
"_id": ObjectId("5cda7dc4bf3115999ed511e4"),
"ShippingDate": ISODate("2019-05-09T00:00:00Z")
}
টিপস: প্রোডাকশনে new Date(Date.now() - 7*24*60*60*1000) বা ড্রাইভার-নির্দিষ্ট ডেট ম্যানিপুলেশন ব্যবহার করুন।