0
我運行一個存儲過程中,我有以下查詢SQL查詢時間太長 - 幫助有更好的表現
SELECT TOP 1 @TopValue = t2.myDecimal
from table1 t1, table2 t2
where t1.ID = t2.table1ID
and CONVERT(VARCHART(8), t1.Created, 112) = @stringYYYYMMDD
and t1.Term = @Label"
TopRate是十進制(8,6) stringYYYYMMDD是代表日期的字符串格式爲YYYYMMDD 標籤是一個簡單的varchar(8)
這個查詢是爲我的數據集的每一行調用的,可以從10到5000.如果我評論這個查詢,過程執行時間在2秒以內。隨着查詢包括,它永遠不會結束。
我使用的是Microsoft SQL Server Management Studio中2008 R2
謝謝您的幫助
+1。作爲字符串的t1比較是一個典型的初學者錯誤 - 它沒有機會使用索引。 – TomTom
我第一次嘗試你的解決方案,它工作正常,但它是因爲我忘記在t1.Created
Greg
'Created'的數據類型是什麼? –