最後にOPTION(RECOMPILE)を追加します
... AND SensorValue != -32767 OPTION (RECOMPILE)
「パラメータスニッフィング」が発生していると思われます
その場合は、OPTIONのままにするか、代替案を検討することができます
アップデート1
次の記事では、「パラメータスニッフィング」を紹介しますhttp://pratchev.blogspot.be/2007/08/parameter-sniffing.html
SQLサーバーの内部(噛み付く可能性がある)をよりよく理解できるようになるため、詳細を理解することをお勧めします。
それを理解すれば、オプションの再コンパイルとのトレードオフができることがわかります。 ステートメントが非常に実行されると、パフォーマンスが低下します 頻繁。
後に再コンパイルするオプションを個人的に追加します 根本的な原因はパラメータのスニッフィングであり、パフォーマンスの問題がない限りそのままにしておきます。不正なパラメータスニッフィングを回避するためにステートメントを書き直すと、意図が失われ、保守性が低下します。ただし、書き直しが正当化される場合があります(そうする場合は適切なコメントを使用してください)。
アップデート2
私がこのテーマについて読んだ中で最も良かったのは、第32章の「パラメータスニッフィング:あなたの親友...それがGRANTFRITCHEYによるものでない場合を除く
」でした。推奨されます。
SQL Server MVP Deep Dives、Volume 2