我已經啓用了sql分析器並確定了幾個需要很長時間執行的查詢。列索引和sql分析器
例如:
Select A from table_A where B = 2
我的問題是,基於上面的查詢,我創建列A或B索引?或A和B?
我已經啓用了sql分析器並確定了幾個需要很長時間執行的查詢。列索引和sql分析器
例如:
Select A from table_A where B = 2
我的問題是,基於上面的查詢,我創建列A或B索引?或A和B?
B
的索引,包括列A
。在B
的哪裏可以使用搜索,同時還返回A
。
您的索引應該在B上,因爲這是您的狀況。您可以嘗試所有方法並查看產生的結果execution plans。
我會創建一個列B上的索引,因爲這是什麼SQL服務器正在做的比較。之後,我會再次運行分析器以查看添加索引是否會對其他查詢產生負面影響。
在B和A上創建單獨的索引。在A上創建索引是爲了避免KEY LOOKUP。