我正在尝试获取查询执行时间,但我也想隐藏查询输出。我只想要经过的时间 - 没有输出。
DECLARE @Start datetime
DECLARE @End datetime
SELECT @StartTimeWA=GETDATE()
SELECT
[id]
,[database_id]
,[proc_name]
,[exec_t] from
[DB].[dbo].[STAT]
SELECT @End=GETDATE()
SELECT DATEDIFF(MS,@Start,@End) AS [Duration]
Run Code Online (Sandbox Code Playgroud)
目前,我得到了查询输出,底部是我的持续时间,就输出而言,这是我唯一想要的。我一直无法做到这一点,想知道是否还有其他人遇到过类似的问题?这是我想在 T-SQL 中做的事情,而不是 Management Studio 或类似的东西。
我正在尝试监视运行 select 语句并向服务器报告所需的时间。我有一个外部监视器服务器,它将每分钟运行一次并获取时间(花费的持续时间),我将随着时间的推移使用它来趋势/基线。当当前查询吐出选择结果和我的持续时间时,它会扭曲它,并且我的监视器服务器变得混乱。我只想要持续时间列。我还将为插入执行此操作,这将很简单,因为它不需要执行选择。
我试图纯粹在 T-SQL 中做到这一点。我不想使用 DMV,因为我想在运行查询时获得所需的时间(快照),并检查当服务器经历不同级别的负载时这是否会随着时间的推移而改变,因为这会给我一个好主意关于查询执行时间是否发生变化。