我正在使用MS SQL,並有兩個表:產品(ProdID,其他字段)和ProdCat(ID,ProdID,CategoryID),它們確定哪個產品屬於哪個類別。創建索引以加快內部聯接的查詢
而且我在做選擇像
SELECT TOP (8) ProdID, Description, Image
FROM Products INNER JOIN ProdCat ON ProdCat.ProdID = Products.ProdID
WHERE Products.Active=1 AND ProdCat.CategoryID = 123 Order by ProdCat.sorting, Products.ProdID
產品表中有超過50.000和ProdCat表有超過150.000記錄和查詢速度很慢。
你能建議如何創建索引來加快此查詢?
謝謝。
嗨,歡迎來到SO。沒有人可以在這裏提供索引,因爲我們缺乏能夠提供幫助的表格的細節。你能爲表格和現有索引提供ddl嗎?這可能是一個索引不是真正的問題,但沒有這些細節我們不能做太多。 –
您應該發佈查詢的實際執行計劃。你可以很容易地從SSMS得到這個。 – Igor
看看這個計劃,看看問題出在哪裏。我可以想象一些可以優化特定查詢的索引,但它們對於該查詢非常具體,並且通常不是很有用......但是我無法確切地知道沒有查看錶格模式,計劃以及瞭解更多關於數據。 – pmbAustin