MySQL クエリからの結果のカウント
MySQL クエリによって返される行数は、いくつかの方法を使用して取得できます。
結果の反復
結果セットをループして行をカウントするだけです。このアプローチは簡単ですが、あまり効率的ではありません。
MySQL 関数の使用
MySQL には、結果内の行をカウントするための mysql_num_rows 関数が用意されています。この関数は、PHP の mysqli_num_rows などのクライアント ライブラリで公開されます。
<code class="php">$result = mysqli_query($link, "SELECT * FROM table1"); $num_rows = mysqli_num_rows($result);</code>
選択的なカウントに COUNT(*) を使用する
特定の条件に一致する行をカウントするには、 COUNT(*) 集計関数を使用します。例:
<code class="sql">SELECT COUNT(*) FROM foo WHERE bar= 'value';</code>
LIMIT を使用した場合の合計行の取得
クエリに LIMIT 句が含まれている場合は、SQL_CALC_FOUND_ROWS および FOUND_ROWS() を使用して合計行を取得できます。 LIMIT なしで返される行数:
<code class="sql">SELECT SQL_CALC_FOUND_ROWS * FROM foo WHERE bar="value" LIMIT 10; SELECT FOUND_ROWS();</code>
注: SQL_CALC_FOUND_ROWS の使用は、MySQL 8.0.17 以降では非推奨です。代わりに、別のクエリを発行してカウントを計算することをお勧めします。
以上がMySQL クエリの結果をカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。