Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

ค้นหาโพสต์ที่เก่ากว่าวันที่ปัจจุบันใน MongoDB

ใช้ $lte (Less Than or Equal) กับวันที่ปัจจุบัน

เปรียบเทียบฟิลด์วันที่กับ new Date() โดยใช้ $lte เพื่อหาเอกสารที่มีวันที่น้อยกว่าหรือเท่ากับวันนี้

สร้างข้อมูลตัวอย่าง

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

แสดงข้อมูลทั้งหมด

> db.demo746.find();

ผลลัพธ์:

{ "_id" : ObjectId("5eae67eca930c785c834e55b"), "DueDate" : ISODate("2020-01-10T00:00:00Z") }
{ "_id" : ObjectId("5eae67eda930c785c834e55c"), "DueDate" : ISODate("2020-10-10T00:00:00Z") }
{ "_id" : ObjectId("5eae67eea930c785c834e55d"), "DueDate" : ISODate("2020-03-05T00:00:00Z") }
{ "_id" : ObjectId("5eae67f1a930c785c834e55e"), "DueDate" : ISODate("2020-05-04T00:00:00Z") }

คิวรีค้นหาเอกสารที่ DueDate เก่ากว่าวันนี้

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

ผลลัพธ์ (สมมติวันนี้คือ 2020-04-15)

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