इसके लिए MongoDB में skip() का उपयोग करें। skip() में count() - 10 सेट करके 10 सबसे हाल के दस्तावेज़ प्राप्त करें।
नमूना डेटा बनाना (12 दस्तावेज़)
> db.demo500.insertOne({value:10});
> db.demo500.insertOne({value:1200});
> db.demo500.insertOne({value:19});
> db.demo500.insertOne({value:28});
> db.demo500.insertOne({value:50});
> db.demo500.insertOne({value:70});
> db.demo500.insertOne({value:100});
> db.demo500.insertOne({value:10});
> db.demo500.insertOne({value:98});
> db.demo500.insertOne({value:80});
> db.demo500.insertOne({value:75});
> db.demo500.insertOne({value:68});
सभी दस्तावेज़ देखना (इंसर्शन ऑर्डर)
> db.demo500.find();
{ "value" : 10 }, { "value" : 1200 }, { "value" : 19 }, { "value" : 28 }, { "value" : 50 }, { "value" : 70 }, { "value" : 100 }, { "value" : 10 }, { "value" : 98 }, { "value" : 80 }, { "value" : 75 }, { "value" : 68 }
ऑर्डर बदले बिना 10 सबसे हाल के दस्तावेज़ (अंतिम 10) प्राप्त करने की क्वेरी
> db.demo500.find().skip(db.demo500.count() - 10);
परिणाम (पहले 2 छोड़कर अंतिम 10):
{ "value" : 19 }, { "value" : 28 }, { "value" : 50 }, { "value" : 70 }, { "value" : 100 }, { "value" : 10 }, { "value" : 98 }, { "value" : 80 }, { "value" : 75 }, { "value" : 68 }
व्याख्या: count() कुल दस्तावेज़ (12) लौटाता है। skip(12-10) = skip(2) पहले 2 दस्तावेज़ छोड़ देता है, बाकी 10 मूल क्रम में लौटाता है। यह "सबसे हाल के" के लिए काम करता है यदि डिफ़ॉल्ट सॉर्ट इंसर्शन ऑर्डर है (ObjectId टाइमस्टैम्प पर आधारित)।