Nikt tak naprawdę o tym nie wspomina, ale prawidłowy sposób użycia SQL_CALC_FOUND_ROWS
technika jest taka:
- Wykonaj zapytanie:
SELECT SQL_CALC_FOUND_ROWS * FROM `table` LIMIT 0, 10
- Następnie uruchom to zapytanie bezpośrednio potem:
SELECT FOUND_ROWS()
. Wynik tego zapytania zawiera pełną liczbę poprzedniego zapytania, tj. tak, jakbyś nie użyłLIMIT
klauzula. To drugie zapytanie jest od razu szybkie, ponieważ wynik został już zapisany w pamięci podręcznej.