MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Paginasi dengan MongoDB

Pagination di MongoDB dapat dilakukan dengan menggunakan kombinasi limit() dan skip() .

Misalnya, asumsikan kita memiliki koleksi yang disebut pengguna di database aktif kita.

>> db.users.find().limit(3)

Ini mengambil daftar tiga dokumen pengguna pertama untuk kami. Catatan, ini pada dasarnya sama dengan menulis:

>> db.users.find().skip(0).limit(3)

Untuk tiga berikutnya, kita bisa melakukan ini:

>> db.users.find().skip(3).limit(3)

Ini melompati tiga catatan pengguna pertama, dan memberi kita tiga catatan berikutnya. Jika hanya ada satu pengguna lagi di database Anda, jangan khawatir; MongoDB cukup pintar untuk hanya mengembalikan data yang ada, dan tidak akan mogok.

Ini dapat digeneralisasikan seperti itu, dan kira-kira setara dengan apa yang akan Anda lakukan dalam aplikasi web. Dengan asumsi kita memiliki variabel yang disebut PAGE_SIZE yang disetel ke 3, dan PAGE_NUMBER arbitrer :

>> db.users.find().skip(PAGE_SIZE * (PAGE_NUMBER - 1)).limit(PAGE_SIZE)

Saya tidak dapat berbicara secara langsung tentang cara menggunakan metode ini di Ruby on Rails, tetapi saya menduga perpustakaan Ruby MongoDB memaparkan metode ini.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bisakah Anda menentukan kunci untuk $addToSet di Mongo?

  2. Menangani kesalahan validasi Mongoose – di mana dan bagaimana?

  3. MongoDB 3 Java memeriksa apakah ada koleksi

  4. Haruskah saya menyimpan token JWT di redis?

  5. MongoDB - Kueri Proyeksi