MySQL で LIMIT を指定した SELECT を使用する場合の行のカウント
MySQL では、SELECT クエリで LIMIT 句を使用すると、返される行数が制限されます。ただし、クエリに複雑なフィルタリング条件も含まれている場合は、LIMIT によって返されない場合でも、それらの条件を満たす行の合計数を知りたい場合があります。
これを実現するために、MySQL は SQL_CALC_FOUND_ROWS を提供します。修飾子。クエリでの使用方法は次のとおりです:
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 でページ分割された結果セットと完全な行の両方を取得できます。単一のデータベースクエリ内のカウント。 SQL_CALC_FOUND_ROWS は、同じ接続内で、FOUND_ROWS() 関数が呼び出される前に使用する必要があることに注意してください。
以上がMySQL で LIMIT を指定した SELECT を使用するときに行をカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。