ホームページ > データベース > mysql チュートリアル > PHP と PDO を使用してデータベース テーブル内の行を効率的にカウントするにはどうすればよいですか?

PHP と PDO を使用してデータベース テーブル内の行を効率的にカウントするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-30 17:38:09
オリジナル
159 人が閲覧しました

How to Efficiently Count Rows in a Database Table Using PHP and PDO?

PDO を使用した行のカウント

PHP と PDO を使用する場合、データベース テーブル内の行カウントを決定することが重要です。 PDO 以前は mysql_num_rows が一般的に使用されていましたが、これは大規模なデータセットを処理するための最も効率的な方法ではない可能性があります。

行数のみに COUNT() を使用する

実際のデータではなく行数が必要な場合は、COUNT(*) の使用を検討してください。 function:

$sql = "SELECT count(*) FROM `table` WHERE foo = ?;";
$result = $con->prepare($sql);
$result->execute([$bar]);
$number_of_rows = $result->fetchColumn();
ログイン後にコピー

PDOStatement::rowCount()

行数とデータの両方を取得するために、PDO は PDOStatement::rowCount() メソッドを提供します。ただし、その機能はデータベースの種類によって異なります。

  • MySQL: rowCount() はバッファされたクエリで動作します (デフォルト設定)。
  • その他のドライバー: rowCount() は、SELECT ステートメントの行数を提供しない可能性があります。代わりに、PDO::query() と COUNT(*) の後に PDOStatement::fetchColumn() を使用してください。

PDO::fetchAll() と count() を使用する

データと行数の両方が必要な場合は、PDO::fetchAll() を使用してデータを配列として取得できます。次に、 count() で行数を決定します。

$data = $pdo->fetchAll();
$row_count = count($data);
ログイン後にコピー

COUNT() の代替構文

変数を使用しないクエリの場合、次を使用してコードを簡素化できます。 PDO::query():

$nRows = $pdo->query('select count(*) from blah')->fetchColumn();
ログイン後にコピー

覚えておいてください、最適な方法を選択してください特定の要件とデータ サイズに合わせて、PDO とデータベースを操作しながら行数を効果的に管理します。

以上がPHP と PDO を使用してデータベース テーブル内の行を効率的にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート