/ / FORCE SCANはクエリのパフォーマンスを向上させることができます - sql、sql-server

FORCE SCANはクエリのパフォーマンスを向上させることができます - SQL、SQL Server

FORCE SEEKはSELECTクエリのパフォーマンスを向上させることができますが、FORCE SCANもクエリのパフォーマンスを向上させることができるかどうか疑問に思います。

誰かが例で説明できますか?

回答:

回答№1の場合は3

1.000という結果になるクエリがあるとします。000行だが、SQL Serverは100個しかないと見積もっています。その場合、SQL Serverは、テーブル検索で100回のインデックスシークが、フルテーブルスキャンよりも高速になると見積もります。しかし、代わりにそれは1.000.000インデックスシークとルックアップをすることになります!

その場合は、 force scan ヒントはクエリのパフォーマンスを向上させます。

この状況は珍しいことに注意してください。 SQL Serverは最悪の場合のために最適化しようと試みます、そして、それがあまりにも多くないことを確かめない限りシークを使用しません。 forceseek よく使われる forcescan.