order by + limitは、ソート後の特定の行数の結果セットを取得するためによく使われる業務クエリシナリオです。これらの結果セットを取得するために、最終的に生成されるクエリプランは、関連テーブルからごく少量のデータを読み取るだけで高い実行効率を持つ場合もあれば、関連テーブルの全データを読み取って一定の演算を行った後に必要な結果行のみを返す場合もあります。後者の場合、一般的に前者よりも効率が低いプランとなります。このようなシナリオでのチューニングでは、これら2種類のプランが生成される原因を理解し、いくつかの最適化手法を用いてより効率的なプランを得る必要があります。
ソートとLIMITの最適化の概要
シェア
前のトピック