私はこのサンプルクエリを持っています:
$STH = $DBH->query("SELECT id FROM table");
最初の行を取得してから、ループしてすべての行を表示したいと思います。したがって、最初の行を取得するために以下を使用します。
$STH->setFetchMode(PDO::FETCH_ASSOC);
$first_row = $STH->fetch();
$first_row = $first_row['id'];
whileループを使用して、すべての行を再度表示します。
while ($list = $STH->fetch()) {
$id = $list['id'];
echo $id;
}
ここで、whileは最初の行をスキップし、それを表示したいと思います。mysql_data_seek
ポインタを最初の行に再度リセットするのと同じことはありますか?私はfetchall
使用できることを知っていますが、それは記憶に悪影響を及ぼし、無駄です。クエリを実行して1に制限することもできますが、複数のテーブルを結合するクエリがあり、非常に低速になるため、これはお勧めしません。他に解決策はありますか?
ありがとう