私はこのクエリを持っています:
SELECT
COUNT(*) AS 'RedactedCount'
,s.Redacted1
,s.[Redacted2]
,s.[Redacted3] AS 'Redacted3'
FROM RedactedTable1 s
LEFT OUTER JOIN RedactedTable2 g ON s.Redacted5= g.Redacted5
WHERE g.Redacted6= 31013 AND s.DateTime >= '2013-03-02 00:00:00'
GROUP BY s.Redacted1,s.Redacted2, s.Redacted3
これは非常に奇妙な動作をします。このクエリは、完了するまでに 1 分 30 秒かかります。日付を 2013-04-02 00:00:00 (この記事を書いている今日) に変更する必要がありますが、これは予想される動作であり、ほぼ瞬時です。
しかし、日付を 2013-02-02 (1 ではなく 2 か月の期間) に変更すると、クエリは 20 秒しかかかりません。
この問題に遭遇した人はいますか? 私はその結果に完全に唖然としています。これは、私が取り組んでいる Web アプリケーションの重要な SQL 要求でもあります。
- Microsoft SQL Server Management Studio 11.0.3128.0
- Microsoft データ アクセス コンポーネント (MDAC) 6.1.7601.17514
- マイクロソフト MSXML 3.0 6.0
- Microsoft Internet Explorer 9.0.8112.16421
- マイクロソフト .NET フレームワーク4.0.30319.296
- 悪用システム6.1.7601
注: データベースの設計が不十分で、インデックスがまったく含まれていません。はい、これは悪いです。残念ながら、これは商用ソフトウェアであり、データベース モデルを変更する権利はありません。しかし、私が抱えている問題はこれが原因だとは思いません。
PS: 厳密な NDA を締結しているため、クエリが大幅に編集されている場合は申し訳ありません。なるべく読みやすいように心がけました。
ありがとう !