MongoDB में skip() का उपयोग करके दस्तावेज़ छोड़ना
skip() विधि कर्सर से पहले n दस्तावेज़ों को छोड़ देती है। एग्रीगेशन पाइपलाइन में $skip स्टेज का उपयोग किया जाता है।
सैंपल डेटा बनाना
> db.demo263.insertOne({_id:100});
{ "acknowledged" : true, "insertedId" : 100 }
> db.demo263.insertOne({_id:200});
{ "acknowledged" : true, "insertedId" : 200 }
> db.demo263.insertOne({_id:300});
{ "acknowledged" : true, "insertedId" : 300 }
दस्तावेज़ देखना
> db.demo263.find();
आउटपुट:
Find में skip()
> db.demo263.find().skip(1); // पहला छोड़ें // परिणाम: 200, 300 > db.demo263.find().skip(1).limit(1); // दूसरा दस्तावेज़ // परिणाम: 200एग्रीगेशन में $skip (उदाहरण में जटिल पाइपलाइन)
{ "_id" : 300, "v_id" : 100 } { "_id" : 100, "v_id" : 200 }उदाहरण विश्लेषण
दिए गए उदाहरण असामान्य रूप से जटिल है: यह एक सिंथेटिक ऐरे
[100, 200]बनाता है, उसे unwind करता है, फिर skip/limit लागू करता है। सामान्य उपयोग के लिए सरलfind().skip(n).limit(m)पर्याप्त है।सामान्य पेजिनेशन पैटर्न
> // पहला पेज > var cursor = db.collection.find().sort({ _id: 1 }).limit(10); > var lastId = cursor.toArray().pop()._id; > // अगला पेज > db.collection.find({ _id: { $gt: lastId } }).sort({ _id: 1 }).limit(10);