Come alcuni di voi potrebbero sapere, l'uso della parola chiave LIMIT in MySQL non preclude la lettura dei record precedenti.Come impaginare in modo efficiente dataset di grandi dimensioni con PHP e MySQL?
Ad esempio:
SELECT * FROM my_table LIMIT 10000, 20;
Significa che MySQL sarà ancora leggere i primi 10.000 record e buttarli via prima di produrre il 20 ci sono dopo.
Quindi, quando si impagina un set di dati di grandi dimensioni, i numeri di pagina elevati significano tempi di caricamento lunghi.
Qualcuno conosce una classe/tecnica/metodologia di impaginazione esistente che può impaginare dataset di grandi dimensioni in un modo più efficiente, cioè che non si basa sulla parola chiave LIMIT MySQL?
In PHP, se possibile, è l'arma scelta dalla mia azienda.
Cheers.
Se il set di dati non è suscettibile di modifiche, è possibile calcolare l'indice di pagina per ciascun elemento sullo sfondo, quindi il paging diventa una selezione in un campo indicizzato. quello che potrebbe accadere è che accidentalmente avrete n + 1 elementi in una pagina ogni tanto. – Zed
http://stackoverflow.com/questions/1243952/how-can-i-speed-up-a-mysql-query-with-a-large-offset-in-the-limit-clause – Sampson