mam tej kwerendy próbki:Jak pobrać 2 razy w MySQL PDO bez fetchAll
$STH = $DBH->query("SELECT id FROM table");
chcę uzyskać pierwszy wiersz, a następnie pętli i wyświetli wszystkie wiersze. Więc używać następujących dostać pierwszego rzędu:
$STH->setFetchMode(PDO::FETCH_ASSOC);
$first_row = $STH->fetch();
$first_row = $first_row['id'];
używam pętli while, aby wyświetlić wszystkie wiersze znowu:
while ($list = $STH->fetch()) {
$id = $list['id'];
echo $id;
}
Teraz natomiast pomija pierwszy wiersz i chcę zostać wyświetlony. Czy istnieje odpowiednik mysql_data_seek
, aby zresetować wskaźnik ponownie do pierwszego wiersza? Wiem, że można używać fetchall
, ale jest źle w pamięci i marnotrawstwo. Mogę również uruchomić kwerendę i ograniczyć do 1, ale nie jest to zalecane, ponieważ mam zapytanie, które łączy wiele tabel i będzie bardzo wolne. Czy jest jakieś inne rozwiązanie?
Dzięki
Potrzebuję go w tablicy, aby użyć wszystkich wierszy, a także muszę wyświetlić pierwszy wiersz przed chwilą, aby użyć go w innym celu ... dzięki :) –
Cóż, wybrałeś tylko "identyfikator" w twoim przykładzie. .. – prodigitalson
to tylko uproszczone zapytanie wyjaśniające problem. Zapytanie jest znacznie większe niż to, że –