sql serverネタをもう一つ。
今回、開発中のシステムはデータ量が大量になることが予測されるサブシステムが多いため
システム全体のレスポンスを心配してまじめにテストデータを何百万件と作成してテストしている。
するとちょっとしたクエリの組み方の違いが分単位でレスポンスに影響してくる。
が、不思議なのが整列。
SELECT COL1,COL2,COL3 FROM AA_TABLE WHERE COL4=XX ORDER BY COL3
というクエリは、テーブルAA_TABLEから COL4がXXである行だけを抽出し、COL3の値で並べ変える。
と、モノの本には書いてある。
AA_TABLEに何万行のデータがあろうがCOL4がXXであるモノが3行なら、3行が整列の対象になる。
そういう前提でモノを作っている。
が、どうも実行プランと検索時間を見ていると、整列が先に行われているようだ。
これはどうにかならんのか?
-----------------
sent from W-ZERO3
今回、開発中のシステムはデータ量が大量になることが予測されるサブシステムが多いため
システム全体のレスポンスを心配してまじめにテストデータを何百万件と作成してテストしている。
するとちょっとしたクエリの組み方の違いが分単位でレスポンスに影響してくる。
が、不思議なのが整列。
SELECT COL1,COL2,COL3 FROM AA_TABLE WHERE COL4=XX ORDER BY COL3
というクエリは、テーブルAA_TABLEから COL4がXXである行だけを抽出し、COL3の値で並べ変える。
と、モノの本には書いてある。
AA_TABLEに何万行のデータがあろうがCOL4がXXであるモノが3行なら、3行が整列の対象になる。
そういう前提でモノを作っている。
が、どうも実行プランと検索時間を見ていると、整列が先に行われているようだ。
これはどうにかならんのか?
-----------------
sent from W-ZERO3