Zwykła odpowiedź brzmi:czy Twoje dane szukają bezpośrednio w tablicy PDOStatement::fetchAll
... Ale jest ŹLE, JEŚLI zapytanie pobiera dużo danych (!).
Istnieją 2 prawdziwe rozwiązania,
1) jeśli baza danych zezwala na użycie PDO::FETCH_ORI_ABS
lub PDO::FETCH_ORI_REL
,przykład,
$result = $sth->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_ABS, 973);
(EDIT) Ale, jak skomentował @ChoiZ, miej ograniczenie PDO-MySQL :"MySQL nie obsługuje kursorów " (na zewnątrz przechowywane programy) "a sterownik nie może ich emulować za Ciebie"... Spróbuj później lub z rozwidleniami MySQL, takimi jak MariaDB.
2) skorzystaj z rozwiązania bazodanowego (rodzaj paginacji). Przykład:
SELECT a, b FROM table LIMIT 1, 973