ホームページ >データベース >mysql チュートリアル >MySQL クエリで LIMIT を使用して行をカウントするにはどうすればよいですか?
LIMIT を使用した MySQL クエリの行数のカウント
LIMIT 句を使用して MySQL クエリを実行する場合、ユーザーは多くの場合、合計行数を同時に取得するという課題に直面します。クエリ条件に一致する行の数。これは、特定の数の行のみを返すという LIMIT の制約により発生します。
この制限を克服するには、サブクエリ メソッドとして知られる手法を使用できます。これを実現するには、次の構文をクエリに組み込みます。
SELECT SQL_CALC_FOUND_ROWS ...;
このステートメントは SQL レベルで行のカウントを開始し、カウントを一時変数に保存します。
count を取得するには、後続のクエリを実行します:
SELECT FOUND_ROWS();
たとえば、次のクエリを考えてみましょう:
SELECT A.ID, A.NAME, B.ID, B.NAME FROM table1 A JOIN table2 B ON ( A.ID = B.TABLE1_ID ) WHERE cond1, cond2, ..., condN LIMIT 10
フィルタリングされた行と合計数の両方を取得するには、次のクエリを使用します。
SELECT SQL_CALC_FOUND_ROWS A.ID, A.NAME, B.ID, B.NAME FROM table1 A JOIN table2 B ON ( A.ID = B.TABLE1_ID ) WHERE cond1, cond2, ..., condN LIMIT 10; SELECT FOUND_ROWS();
この手法により、ユーザーは追加のクエリに頼ることなく、LIMIT 句を使用してクエリ内の行を効率的にカウントできるようになります。
以上がMySQL クエリで LIMIT を使用して行をカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。