FORCE SEEK は SELECT クエリのパフォーマンスを改善できると思いますが、FORCE SCAN もクエリのパフォーマンスを改善できるのでしょうか。
誰かが例で説明できますか?
FORCE SEEK は SELECT クエリのパフォーマンスを改善できると思いますが、FORCE SCAN もクエリのパフォーマンスを改善できるのでしょうか。
誰かが例で説明できますか?
1.000.000行になるクエリがあるが、SQL Serverは100行しかないと推定します。SQLServerは、テーブルルックアップを使用した100個のインデックスシークが全表スキャンよりも高速であると推定します。しかし、代わりに、1.000.000のインデックスシークとルックアップを実行することになります。
その場合、force scan
ヒントを追加するとクエリのパフォーマンスが向上します。
この状況は異常であることに注意してください。SQL Serverは最悪の場合に最適化を試み、それらの数が多すぎないことがかなり確実でない限り、シークを使用しません。そのため、forceseek
より頻繁に使用されますforcescan
。