ホームページ  >  記事  >  データベース  >  MySQL クエリ結果の行を効率的にカウントするにはどうすればよいですか?

MySQL クエリ結果の行を効率的にカウントするにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-05 02:34:02399ブラウズ

How to Efficiently Count Rows in MySQL Query Results?

MySQL クエリ結果の行のカウント

はじめに:

MySQL データベースを使用する場合、クエリの結果として得られる行数をカウントすることは、さまざまなアプリケーションで一般的なタスクです。この記事では、MySQL で行を効率的にカウントするためのいくつかの方法を説明します。

1. mysql_num_rows() 関数の使用:

mysql_num_rows() 関数は、結果セット内の行数を返します。これを使用するには、クエリを使用してデータベースから結果を取得し、その結果を関数に渡します:

# Example usage in PHP:
$result = mysqli_query($conn, "SELECT * FROM table1");
$num_rows = mysqli_num_rows($result);

2. COUNT(*) キーワードの使用:

COUNT(*) キーワードを使用すると、特定の条件に一致する行の数をカウントできます。これは、結果をフィルタリングする場合に特に役立ちます:

# Count rows where 'bar' equals 'value':
SELECT COUNT(*) FROM table1 WHERE bar = 'value';

3. LIMIT を使用した合計行数の取得 (MySQL 8.0.16 まで):

LIMIT 句を考慮せずに合計行数を取得するには、SQL_CALC_FOUND_ROWS キーワードに続いて SELECT FOUND_ROWS():

# Calculate total rows ignoring LIMIT:
SELECT SQL_CALC_FOUND_ROWS * FROM table1 WHERE bar = 'value' LIMIT 10;

SELECT FOUND_ROWS();

MySQL 8.0.17 以降に関する重要な注意事項:

SQL_CALC_FOUND_ROWS は MySQL 8.0.17 で非推奨となり、将来のバージョンでは削除される予定です。代わりに、別のクエリを使用して合計行数を計算することをお勧めします。

以上がMySQL クエリ結果の行を効率的にカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。