Bạn có thể sử dụng Date () cùng với toán tử $ gte để tìm các đối tượng được tạo tuần trước. Đây là sản phẩm sữa đông như sau trong hệ thống của tôi -
> new Date(); ISODate("2019-05-14T08:32:42.773Z")
Trước tiên, hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-01")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e0") } > db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-02")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e1") } > db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-08")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e2") } > db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-07")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e3") } > db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-05-09")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e4") } > db.findObectInLastWeekDemo.insertOne({"ShippingDate":new ISODate("2019-04-26")}); { "acknowledged" : true, "insertedId" : ObjectId("5cda7dc4bf3115999ed511e5") }
Sau đây là truy vấn để hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -
> db.findObectInLastWeekDemo.find().pretty();
Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5cda7dc4bf3115999ed511e0"), "ShippingDate" : ISODate("2019-05-01T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e1"), "ShippingDate" : ISODate("2019-05-02T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e2"), "ShippingDate" : ISODate("2019-05-08T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e3"), "ShippingDate" : ISODate("2019-05-07T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e4"), "ShippingDate" : ISODate("2019-05-09T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e5"), "ShippingDate" : ISODate("2019-04-26T00:00:00Z") }
Đây là truy vấn để tìm các đối tượng được tạo trong tuần trước trong MongoDB -
> db.findObectInLastWeekDemo.find({ShippingDate:{$gte: new Date(new Date() - 7 * 60 * 60 * 24 * 1000)}});
Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5cda7dc4bf3115999ed511e2"), "ShippingDate" : ISODate("2019-05-08T00:00:00Z") } { "_id" : ObjectId("5cda7dc4bf3115999ed511e4"), "ShippingDate" : ISODate("2019-05-09T00:00:00Z") }