MongoDB-এ $lte (less than or equal) অপারেটর এবং Date() ব্যবহার করে আজকের তারিখের আগের বা সমান তারিখের ডকুমেন্ট খুঁজে বের করা যায়।
নমুনা ডেটা তৈরি করা
getDocumentsExpiredDemo কালেকশনে চারটি ডকুমেন্ট ইনসার্ট করি যাতে ArrivalDate ফিল্ড থাকে। বর্তমান তারিখ ধরি ২০১৯-০৫-১১।
> db.getDocumentsExpiredDemo.insertOne({"ArrivalDate":new ISODate("2019-05-11")});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd563b17924bb85b3f4893b") }
> db.getDocumentsExpiredDemo.insertOne({"ArrivalDate":new ISODate("2019-01-01")});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd563bf7924bb85b3f4893c") }
> db.getDocumentsExpiredDemo.insertOne({"ArrivalDate":new ISODate("2019-05-10")});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd563ca7924bb85b3f4893d") }
> db.getDocumentsExpiredDemo.insertOne({"ArrivalDate":new ISODate("2019-02-01")});
{ "acknowledged" : true, "insertedId" : ObjectId("5cd563e77924bb85b3f4893e") }
সকল ডকুমেন্ট দেখানো
> db.getDocumentsExpiredDemo.find().pretty();
আউটপুট:
{ "_id" : ObjectId("5cd563b17924bb85b3f4893b"), "ArrivalDate" : ISODate("2019-05-11T00:00:00Z") }
{ "_id" : ObjectId("5cd563bf7924bb85b3f4893c"), "ArrivalDate" : ISODate("2019-01-01T00:00:00Z") }
{ "_id" : ObjectId("5cd563ca7924bb85b3f4893d"), "ArrivalDate" : ISODate("2019-05-10T00:00:00Z") }
{ "_id" : ObjectId("5cd563e77924bb85b3f4893e"), "ArrivalDate" : ISODate("2019-02-01T00:00:00Z") }
$lte দিয়ে এক্সপায়ার্ড ডকুমেন্ট খুঁজা
new Date() বর্তমান তারিখ দেয়। $lte দিয়ে সমান বা কম তারিখ খুঁজি:
> db.getDocumentsExpiredDemo.find({ "ArrivalDate": { $lte : new Date() } });
আউটপুট:
{ "_id" : ObjectId("5cd563bf7924bb85b3f4893c"), "ArrivalDate" : ISODate("2019-01-01T00:00:00Z") }
{ "_id" : ObjectId("5cd563ca7924bb85b3f4893d"), "ArrivalDate" : ISODate("2019-05-10T00:00:00Z") }
{ "_id" : ObjectId("5cd563e77924bb85b3f4893e"), "ArrivalDate" : ISODate("2019-02-01T00:00:00Z") }
ব্যাখ্যা: ২০১৯-০৫-১১ (আজকের তারিখ) বাদ পড়েছে কারণ সেটি new Date() এর সমান, কিন্তু উদাহরণে আউটপুটে নেই — সম্ভবত সময় অংশ (time component) ভিন্ন। সঠিক রেজাল্ট পেতে ISODate("2019-05-11T23:59:59Z") বা $lt: new Date("2019-05-12") ব্যবহার করুন।