LoginSignup
0
0

More than 1 year has passed since last update.

PHPで件数をカウントしたいときの方法 MySQL

Last updated at Posted at 2022-01-27

参考サイト

上記サイトの参考箇所

基本的に,以下の方法に従います.

  • 件数だけでなく結果セットも一緒に欲しい場合, PDOStatement::fetchAll メソッドで一気に配列として取得し,それに対してPHPの count 関数を使う.

  • 件数だけが欲しい場合は, SELECT COUNT(*) WHERE ... といったクエリを発行し,その結果を PDOStatement::fetchColumn メソッドで得る.

これらの方法が最も推奨されますが,他の方法が無いわけではありません.以下に補足説明を示します.但しこれらはMySQLやPostgreSQLについてのみ当てはまり,SQLiteには当てはまりません.

####バッファクエリ使用時
SELECT に対しても常に PDOStatement::rowCount メソッドを使うことができる.

####非バッファクエリ使用時
PDOStatement::fetchAll メソッドを実行した後,つまり全てのフェッチが終わった後であれば SELECT に対しても PDOStatement::rowCount メソッドを使うことができる.
結果のフェッチを途中で中断したまま次のクエリ実行に移行するときは, PDOStatement::closeCursor メソッドを使ってカーソルを閉じる必要がある.1つ目の結果セットをPDOStatementに保持したまま2つ目のSQLを実行することはできないので,その場合はあらかじめ PDOStatement::fetchAll メソッドでデータを退避させておく必要がある.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0