Mic*_*eyn 213 sql-server ssms sql-server-2008
当我在SSMS中提交批处理(例如,执行查询)时,我看到在状态栏中执行所花费的时间.是否可以配置SSMS以毫秒级分辨率显示查询时间?
这是我正在谈论的用红色圈出的感兴趣部分的酒吧:

小智 350
你想要做的是:
set statistics time on
-- your query
set statistics time off
这将使您的消息窗口中的输出看起来像这样:
SQL Server执行时间:CPU时间= 6毫秒,已用时间= 6毫秒.
Nic*_*ckG 116
通过执行以下操作之一打开客户端统计信息:
然后你得到一个新标签,记录最后10次执行(加上平均值!)的时间,IO数据和行数等等:

Yma*_*rst 55
我一直在努力,直到我发现这个......
此外,如果你打开属性窗口,你可能会发现一些神奇的"连接已用时间"可能会给你一些执行时间...希望它有帮助......
ati*_*ker 16
To get the execution time as a variable in your proc:
DECLARE @EndTime datetime
DECLARE @StartTime datetime 
SELECT @StartTime=GETDATE() 
-- Write Your Query
SELECT @EndTime=GETDATE()
--This will return execution time of your query
SELECT DATEDIFF(ms,@StartTime,@EndTime) AS [Duration in millisecs] 
AND see this
Measuring Query Performance : "Execution Plan Query Cost" vs "Time Taken"
小智 10
我是在追求同样的事情,偶然发现了以下很棒的链接:
http://www.sqlserver.info/management-studio/show-query-execution-time/
它显示了测量性能的三种不同方法.一切都有利于自己的长处.我选择的那个如下:
DECLARE @ Time1 DATETIME
DECLARE @ Time2 DATETIME
SET @ Time1 = GETDATE()
- 在此处插入查询
SET @ Time2 = GETDATE()
SELECT DATEDIFF(MILLISECOND,@ Time1,@ Time2)AS Elapsed_MS
这将显示查询结果,然后显示完成所需的时间.
希望这可以帮助.
小智 6
我不知道如何扩展信息栏。
但是您可以将“消息”选项卡中显示的所有查询的计时设置为默认值。
在查询窗口中,转到查询菜单项,选择“查询选项”,然后在“执行”组中选择“高级”,并选中“设置统计时间”/“设置统计 IO”复选框。然后,这些值将显示在每个查询的消息区域中,而无需记住打开和关闭设置的统计信息。
您还可以随时使用 Shift + Alt + S 启用客户端统计