Niemand erwähnt dies wirklich, aber die korrekte Verwendung von SQL_CALC_FOUND_ROWS
Technik ist wie folgt:
- Führen Sie Ihre Abfrage durch:
SELECT SQL_CALC_FOUND_ROWS * FROM `table` LIMIT 0, 10
- Führen Sie dann direkt danach diese Abfrage aus:
SELECT FOUND_ROWS()
. Das Ergebnis dieser Abfrage enthält die vollständige Zählung der vorherigen Abfrage, d. h. so, als ob Sie dasLIMIT
nicht verwendet hätten Klausel. Diese zweite Abfrage ist sofort schnell, da das Ergebnis bereits zwischengespeichert wurde.