$redact এবং $cond ব্যবহার করে ISODate ফিল্ডের ঘন্টা রেঞ্জ অনুযায়ী ডকুমেন্ট ফিল্টার করুন।
নমুনা ডেটা
> db.demo178.insertOne({"DueDate": new ISODate("2019-01-10T06:18:20.474Z")});
> db.demo178.insertOne({"DueDate": new ISODate("2020-11-10T18:05:11.474Z")});
> db.demo178.insertOne({"DueDate": new ISODate("2020-03-15T07:05:10.474Z")});
> db.demo178.insertOne({"DueDate": new ISODate("2020-06-11T16:05:10.474Z")});
কোয়ারি (ঘন্টা ৫ থেকে ৯ এর মধ্যে)
> db.demo178.aggregate([{
$redact: {
$cond: {
if: {$and: [{$gt: [{"$hour": "$DueDate"}, 5]}, {$lt: [{"$hour": "$DueDate"}, 9]}]},
then: "$$KEEP",
else: "$$PRUNE"
}
}
}])
ফলাফল
{ "DueDate": ISODate("2019-01-10T06:18:20.474Z") }
{ "DueDate": ISODate("2020-03-15T07:05:10.474Z") }