MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

MongoDB रेंज पेजिनेशन

अच्छा सवाल!

"कितना अधिक, बहुत अधिक है?" - यह, निश्चित रूप से, आपके डेटा आकार और प्रदर्शन आवश्यकताओं पर निर्भर करता है। जब मैं 500-1000 से अधिक रिकॉर्ड छोड़ता हूं, तो व्यक्तिगत रूप से मैं असहज महसूस करता हूं।

वास्तविक उत्तर आपकी आवश्यकताओं पर निर्भर करता है। यहां बताया गया है कि आधुनिक साइटें क्या करती हैं (या, कम से कम, उनमें से कुछ)।

सबसे पहले, नेवबार इस तरह दिखता है:

1 2 3 ... 457

उन्हें कुल रिकॉर्ड संख्या और पृष्ठ आकार से अंतिम पृष्ठ संख्या मिलती है। आइए पेज 3 पर जाएं। इसमें पहले रिकॉर्ड से कुछ छोड़ना शामिल होगा। जब परिणाम आते हैं, तो आप पृष्ठ 3 पर पहले रिकॉर्ड की आईडी जानते हैं।

1 2 3 4 5 ... 457

आइए कुछ और छोड़ें और पेज 5 पर जाएं।

1 ... 3 4 5 6 7 ... 457

तुम्हें नया तरीका मिल गया है। प्रत्येक बिंदु पर आप पहले, अंतिम और वर्तमान पृष्ठ देखते हैं, और वर्तमान पृष्ठ से आगे और पीछे दो पृष्ठ भी देखते हैं।

प्रश्न

var current_id; // id of first record on current page.

// go to page current+N
db.collection.find({_id: {$gte: current_id}}).
              skip(N * page_size).
              limit(page_size).
              sort({_id: 1});

// go to page current-N
// note that due to the nature of skipping back,
// this query will get you records in reverse order 
// (last records on the page being first in the resultset)
// You should reverse them in the app.
db.collection.find({_id: {$lt: current_id}}).
              skip((N-1)*page_size).
              limit(page_size).
              sort({_id: -1});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo में सभी दस्तावेज़ों में स्ट्रिंग को कैसे बदलें?

  2. MongoDB - .find () में एक सशर्त विवरण सेट करना

  3. आप आधिकारिक सी # ड्राइवर का उपयोग कर MongoDB में Update.Set का उपयोग करके एकाधिक फ़ील्ड कैसे अपडेट करते हैं?

  4. स्प्रिंग डेटा MongoDB का परिचय

  5. विंडोज सिस्टम पर MongoDB कैसे स्थापित करें?