ホームページ > データベース > mysql チュートリアル > OFFSET と LIMIT を使用して MySQL ページネーションで合計行数を効率的に取得する方法

OFFSET と LIMIT を使用して MySQL ページネーションで合計行数を効率的に取得する方法

DDD
リリース: 2024-11-23 21:16:15
オリジナル
835 人が閲覧しました

How to Efficiently Get Total Row Count in MySQL Pagination with OFFSET and LIMIT?

オフセットと制限を使用したページネーションの MySQL クエリでの合計結果の検索

ページネーションのシナリオでは、結果の合計数を決定することが正確な結果を得るために重要ですページ計算。オフセットと制限を使用してデータを取得すると、別のクエリから合計数を計算しようとするときに計算効率に関する懸念が生じる可能性があります。

この問題に対処するために、MySQL は SQL_CALC_FOUND_ROWS を使用したソリューションを提供します。このディレクティブをクエリに追加すると、データベースは実際に行をフェッチせずに、一致する行の合計数を計算します。

SELECT SQL_CALC_FOUND_ROWS * FROM table WHERE category_id = 1 LIMIT 10 OFFSET 20;
ログイン後にコピー

このクエリの実行後、データベースは次のような別の内部クエリを使用して行の合計数を計算します。

SELECT FOUND_ROWS();
ログイン後にコピー

この手法は、合計結果数を取得する効率的かつ正確な方法を提供します。

以上がOFFSET と LIMIT を使用して MySQL ページネーションで合計行数を効率的に取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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