Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MongoDB

Tìm bài viết cũ hơn ngày hiện tại trong MongoDB

Sử dụng $lte (less than or equal) với new Date()

So sánh trường ngày tháng với new Date() (thời điểm hiện tại) để lọc các bản ghi đã qua hạn.

Dữ liệu mẫu

> db.demo746.insertMany([
  { DueDate: new Date("2020-01-10") },
  { DueDate: new Date("2020-10-10") },
  { DueDate: new Date("2020-03-05") },
  { DueDate: new Date("2020-05-04") }
]);

Truy vấn: DueDate <= hôm nay

> db.demo746.find({ DueDate: { $lte: new Date() } });

Kết quả (giả sử hôm nay 2020-04-15)

{ "_id": ObjectId("..."), "DueDate": ISODate("2020-01-10T00:00:00Z") }
{ "_id": ObjectId("..."), "DueDate": ISODate("2020-03-05T00:00:00Z") }

Hai bản ghi tháng 1 và tháng 3 được trả về, tháng 5 và tháng 10 chưa đến hạn.