我有2個查詢需要針對我的數據庫運行。一個查找ManufacturerID,另一個查找ManufacturerID和SalesRepID。SQl服務器索引,同一列2個不同的索引?
我是否應該在ManufacturerID 1個指數,並在SalesRepID
或ManufacturerID
1指數和1個指數上ManufacturerID和SalesRepID 1個指數?
我有2個查詢需要針對我的數據庫運行。一個查找ManufacturerID,另一個查找ManufacturerID和SalesRepID。SQl服務器索引,同一列2個不同的索引?
我是否應該在ManufacturerID 1個指數,並在SalesRepID
或ManufacturerID
1指數和1個指數上ManufacturerID和SalesRepID 1個指數?
這取決於。如果你的表是足夠大的,和你的數據足夠稀疏的,它可能是有意義的有:
ManufacturerID
指數上ManufacturerID
SalesRepID
在另一方面,如果對於每個ManufacturerID
,您只有幾個不同的SalesRepID
,那麼只需使用ManufacturerID
上的索引就可以很好地優化這兩個查詢。
通常,您只需要在ManufacturerID和SalesRepID上的一個索引上使用一個索引。
對ManufacturerID的搜索仍應使用此複合索引,只要它是索引鍵列上的左側列。