我們有一個小問題,我們查詢,這是一個.NET(4.5),通過應用System.Data.SqlClient.SqlCommand
內部執行的一個。SQL服務器忽略索引並執行表掃描
的問題是,該查詢將要執行表掃描,這是非常緩慢的。因此,執行計劃展示了在這裏表掃描
,使文本顯示,該過濾器Termine.Datum和Termine.EndDatum導致表掃描。但爲什麼SQL-Server忽略索引? Termine.Datum和Termine.EndDatum上有兩個索引。我們還嘗試添加第三個結合的數據和EndDatum。
的指標都是非聚集索引和這兩個領域都日期時間。
顯然'statistics'已經過時了!!更新統計再試運行查詢 –
還發布查詢和索引的詳細信息,以獲得更準確的響應。在這裏分享執行計劃https://www.brentozar.com/pastetheplan/ –
由於您嘗試兩個範圍查詢,兩個單獨的索引絕對無助於您。單一的組合索引*可能有用,但不能保證如此。 –