sql >> Databáze >  >> NoSQL >> MongoDB

Stránkování s MongoDB

Stránkování v MongoDB lze provést pomocí kombinace limit() a skip() .

Předpokládejme například, že v naší aktivní databázi máme kolekci s názvem users.

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

Tím získáme seznam prvních tří uživatelských dokumentů. Všimněte si, že je to v podstatě stejné jako psaní:

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

Pro další tři můžeme udělat toto:

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

Tím přeskočíte první tři uživatelské záznamy a získáte další tři. Pokud je ve vaší databázi pouze jeden další uživatel, nemějte obavy; MongoDB je dostatečně chytrý na to, aby vrátil pouze přítomná data a nezhroutil se.

To lze takto zobecnit a bylo by to zhruba ekvivalentní tomu, co byste dělali ve webové aplikaci. Za předpokladu, že máme proměnné nazvané PAGE_SIZE která je nastavena na 3 a libovolné PAGE_NUMBER :

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

Nemohu přímo mluvit o tom, jak použít tuto metodu v Ruby on Rails, ale mám podezření, že knihovna Ruby MongoDB tyto metody odhaluje.




  1. MongoDB findOneAndReplace()

  2. Počítání v úložišti Spring Data MongoDB

  3. MongoDB a připojí se

  4. Jak přejmenujete databázi MongoDB?