ホームページ > php教程 > php手册 > php MySQL とページングの効率

php MySQL とページングの効率

WBOY
リリース: 2016-06-13 12:28:57
オリジナル
813 人が閲覧しました


最も基本的なページング方法:
SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ...
小規模および中程度のデータ量の場合は、この SQL で十分です注意が必要な唯一の問題は、インデックスが使用されていることを確認することです:
たとえば、実際の SQL が次のステートメントに似ている場合は、category_id、id 列に複合インデックスを確立することをお勧めします。
SELECT * FROM Articles WHERE category_id = 123 ORDER BY id LIMIT 50, 10

サブクエリのページング方法:

データ量が増えるとページ数もどんどん増えていきます、次の数ページの SQL は次のようになります。

SELECT * FROM Articles WHERE category_id = 123 ORDER BY id LIMIT 10000, 10

一言で言えば、ページが遠くになるほど、ページングされると、LIMIT ステートメントのオフセットが大きくなり、速度も大幅に遅くなります。

現時点では、おおよそ次のようにサブクエリを通じてページングの効率を向上させることができます:

SELECT * FROM Articles WHERE category_id = 123 AND id >= (
SELECT id FROM Articles ORDER ID による LIMIT 10000, 1
) LIMIT 10

-------------------------------- - ----------

実際には、戦略モードと同様の方法でページングを処理できます。たとえば、ページングが 100 ページ以内であると判断された場合は、最も基本的なページング方法であり、100 ページを超える場合は、サブクエリ ページング方法を使用します。

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