Paginering is moeilijk; het RDBMS-model is niet goed geschikt voor grote aantallen kortstondige zoekopdrachten met stateful scrollen. Zoals u opmerkte, is het gebruik van hulpbronnen meestal te hoog.
Je hebt de opties:
LIMIT
enOFFSET
- Een cursor gebruiken
- De resultaten kopiëren naar een tijdelijke tabel of naar memcached of iets dergelijks, en het dan van daaruit lezen
x > id
enLIMIT
Hiervan geef ik de voorkeur aan x > id
met een LIMIT
. Onthoud gewoon de laatste ID die je hebt gezien en vraag om de volgende. Als u een monotoon toenemende reeks heeft, is dit eenvoudig en betrouwbaar, en voor eenvoudige zoekopdrachten is het efficiënt.