2012-10-09 58 views
1

我不知道如何測試這兩種獲取我想要的方式的性能。Sybase今日結果,雙向比較

select * 
from table 
where column like '%'+left(getdate(),11)+"% 

select * 
from table 
where 
       DATEPART (DD, column) = DATEPART (DD, GETDATE()) 
     AND  DATEPART (MM, column) = DATEPART (MM, GETDATE()) 
     AND  DATEPART (YY, column) = DATEPART (YY, GETDATE()) 
+0

秒錶?指標?更多細節? –

+0

帶有datepart函數的第二個代碼在我要維護的系統中隨處可見。我只是好奇,如果我介紹第一個代碼是否會有所改進。只是想知道其他人是否也這樣做了。 – Iyas

+0

我正在尋找像...一樣的答案「喜歡使用更多資源,或者日期部分組合使用更多資源」以及一些參考資料。 – Iyas

回答

1

通常在SQL中,您可以循環執行語句,然後多次計算每個語句的執行時間。這樣做幾次以確保並比較結果。

declare @startTime datetime 
declare @endTime datetime 
declare @execution BIGINT 

SET @execution = 0 

set @startTime = GETDATE() 
while (@execution < 1000000) 
begin  
    --TestSyntax goes here 


    SET @execution = @execution + 1 

end 
set @endTime = GETDATE() 

SELECT DATEDIFF(ms, @endTime, @startTime) AS 'TimeToExecute' 

也知道,字符串比較通常在所有語言中都比較慢。

+0

tq! TQ!我會等待幾個小時,看看其他人是否有其他建議。 – Iyas