当我在SSMS中提交一个批处理(例如,执行一个查询)时,我在状态栏中看到它执行所花费的时间。是否可以配置SSMS以毫秒级分辨率显示查询时间?

下面是我所说的条形图,其中感兴趣的部分用红色圈了起来:


当前回答

通过执行以下操作之一打开客户端统计信息:

菜单:查询>包含客户端统计信息 工具栏:单击按钮(包括实际执行时间旁边) 键盘:Shift-Alt-S

然后你会得到一个新标签,它记录了(最多)最近10次执行的时间,IO数据和行数等(加上平均值!):

其他回答

我一直在挣扎,直到我发现了这个……

http://blog.sqlauthority.com/2009/10/01/sql-server-sql-server-management-studio-and-client-statistics/

此外,如果你打开属性窗口,你可能会发现一些神奇的“连接运行时间”,这可能会给你一些执行时间…… 希望能有所帮助……

通过按Ctrl+Alt+S包含客户端统计信息。 然后,下面的统计信息选项卡中将显示所有执行信息。

你可以试试下面的代码:

USE AdventureWorks2012;
GO
SET STATISTICS TIME ON;
GO
SELECT ProductID, StartDate, EndDate, StandardCost 
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS TIME OFF;
GO

你要做的是:

set statistics time on

-- your query

set statistics time off

这将在你的Messages窗口中有类似这样的输出:

SQL Server执行时间:CPU时间= 6毫秒,运行时间= 6毫秒。

通过执行以下操作之一打开客户端统计信息:

菜单:查询>包含客户端统计信息 工具栏:单击按钮(包括实际执行时间旁边) 键盘:Shift-Alt-S

然后你会得到一个新标签,它记录了(最多)最近10次执行的时间,IO数据和行数等(加上平均值!):