2012-07-13 71 views

回答

5

前,后查询节省时间,并计算 的区别,是这样的:

DECLARE @start_time DATETIME, @end_time DATETIME 
SET @start_time = CURRENT_TIMESTAMP 

-- query goes here 

SET @end_time = CURRENT_TIMESTAMP 
SELECT DATEDIFF(ms, @start_time, @end_time) 
4

尝试执行“SET STATISTICS TIME ON”;在执行交易之前在您的连接上。

+0

谢谢。但我想以编程方式将此时间保存在表格中 – Mehran 2012-07-13 16:55:37

+4

@Mehran - 然后将这些要求添加到您的问题中 – Lamak 2012-07-13 16:57:23

+0

您将通过SqlConnection的InfoMessage事件获取消息。 – JohnC 2012-07-13 17:06:45

2

JohnC是正确的,这可能是你想要的。

但根据您的具体需求,还有其他选择。首先,SSMS会告诉您在执行查询时,至少到第二个时间的时间量,通过右下角的角点传递。

当然,您可以使用getdate()从SQL Server立即获得执行前和执行后的时间,并找出差异。

对于大量查询的重复测试,您还可以使用类似于timeit这样的库的Python等其他语言构建测试工具。