Sử dụng $where với hàm JavaScript getMonth() và getDate() để lọc theo tháng/ngày bỏ qua năm. Tạo collection:
> 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") }
Hiển thị document.
Truy vấn tìm tháng = 1 (Tháng 2, vì 0-based) HOẶC ngày = 10:
> db.demo181.find({
$where: function() {
return this.ShippingDate.getMonth() == 1 || this.ShippingDate.getDate() == 10;
}
})
Kết quả (2 document khớp):
{
"_id": ObjectId("5e398a699e4f06af551997fe"),
"ShippingDate": ISODate("2020-01-10T00:00:00Z")
}
{
"_id": ObjectId("5e398a7d9e4f06af55199800"),
"ShippingDate": ISODate("2018-01-10T00:00:00Z")
}