ho questa query di esempio:Come per andare a prendere 2 volte in MySQL DOP senza fetchAll
$STH = $DBH->query("SELECT id FROM table");
voglio ottenere la prima fila e poi loop e visualizzare tutte le righe. Quindi io uso il seguente per ottenere la prima fila:
$STH->setFetchMode(PDO::FETCH_ASSOC);
$first_row = $STH->fetch();
$first_row = $first_row['id'];
Io uso ciclo while per visualizzare nuovamente tutte le righe:
while ($list = $STH->fetch()) {
$id = $list['id'];
echo $id;
}
Ora l'mentre salta la prima riga e lo voglio per essere visualizzato. Esiste un equivalente a mysql_data_seek
per reimpostare il puntatore di nuovo sulla prima riga? So che lo fetchall
può essere usato ma è cattivo in memoria e sprecone. Potrei anche eseguire la query e limitare a 1, ma questo non è consigliato in quanto ho una query che unisce più tabelle e sarebbe molto lento. c'è un'altra soluzione?
Grazie
Ho bisogno che sia in una matrice per utilizzare tutte le righe anche ho bisogno di visualizzare la prima riga prima del tempo per usarlo per un altro scopo ... grazie :) –
Beh hai selezionato solo l'id 'nel tuo esempio. .. – prodigitalson
questa è solo una query semplificata per spiegare il problema ... la query è molto più grande di quella –