सबसे पहले, वर्तमान महीना प्राप्त करें और पिछले महीने के रिकॉर्ड्स लाने के लिए 1 घटाएं। पहले कलेक्शन बनाएं:
> db.findOneMonthAgoData.insertOne({"CustomerName":"Chris","PurchaseDate":new ISODate("2019-12-26")});
{ "acknowledged": true, "insertedId": ObjectId("5e04e16c150ee0e76c06a04f") }
> db.findOneMonthAgoData.insertOne({"CustomerName":"David","PurchaseDate":new ISODate("2019-11-26")});
{ "acknowledged": true, "insertedId": ObjectId("5e04e178150ee0e76c06a050") }
> db.findOneMonthAgoData.insertOne({"CustomerName":"Bob","PurchaseDate":new ISODate("2020-11-26")});
{ "acknowledged": true, "insertedId": ObjectId("5e04e186150ee0e76c06a051") }
सभी डॉक्यूमेंट्स देखें:
> db.findOneMonthAgoData.find();
आउटपुट:
पिछले महीने से परिणाम प्राप्त करने की क्वेरी:
> monthData = new Date(); ISODate("2019-12-26T16:43:04.283Z") > monthData.setMonth(monthData.getMonth() - 1); 1574786584283 > db.findOneMonthAgoData.find({PurchaseDate: {$gte: monthData}});परिणाम: