我有两个使用 SqlServer 2005 的 t-sql 查询。如何测量每个查询需要多长时间?
使用我的秒表并没有减少它。
测量事件之间“经过时间”的一种简单方法是仅获取当前日期和时间。
在 SQL Server 管理工作室中
SELECT GETDATE(); SELECT /* query one */ 1 ; SELECT GETDATE(); SELECT /* query two */ 2 ; SELECT GETDATE();
要计算经过的时间,您可以将这些日期值抓取到变量中,并使用 DATEDIFF 函数:
DECLARE @t1 DATETIME; DECLARE @t2 DATETIME; SET @t1 = GETDATE(); SELECT /* query one */ 1 ; SET @t2 = GETDATE(); SELECT DATEDIFF(millisecond,@t1,@t2) AS elapsed_ms; SET @t1 = GETDATE(); SELECT /* query two */ 2 ; SET @t2 = GETDATE(); SELECT DATEDIFF(millisecond,@t1,@t2) AS elapsed_ms;
这只是一种方法。您还可以使用 SQL Profiler 获取查询的经过时间。