Jak pobrać 2 razy w MYSQL PDO bez FETCHALL

Mam to przykładowe zapytanie:

$STH = $DBH->query("SELECT id FROM table");

Chcę uzyskać pierwszy wiersz, a następnie zapętlić i wyświetlić wszystkie wiersze. Dlatego używam następujących elementów, aby uzyskać pierwszy wiersz:

$STH->setFetchMode(PDO::FETCH_ASSOC);
$first_row = $STH->fetch();
$first_row = $first_row['id'];

Używam pętli while do ponownego wyświetlenia wszystkich wierszy:

while ($list = $STH->fetch()) {      
$id = $list['id'];
echo $id;
}

Teraz pomija pierwszy wiersz i chcę, aby był wyświetlany. Czy istnieje odpowiednikmysql_data_seek zresetować wskaźnik ponownie do pierwszego rzędu? wiemfetchall może być używany, ale źle wpływa na pamięć i marnotrawstwo. Mogę również uruchomić zapytanie i ograniczyć do 1, ale nie jest to zalecane, ponieważ mam zapytanie, które łączy wiele tabel i byłoby bardzo wolne. Czy jest jakieś inne rozwiązanie?

Dzięki

questionAnswers(3)

yourAnswerToTheQuestion