SQL Server 2012を実行していて、DMVを使用して監視するためにいくつかのクエリをまとめようとしています。ただし、DMV のtotal_elapsed_time
フィールドをsys.dm_exec_requests
見ると、数字は途方に暮れています。以下に例を示します。
SELECT
session_id, RunTime = CURRENT_TIMESTAMP,
start_time, total_elapsed_time
FROM sys.dm_exec_requests
WHERE session_id = 284;
session_id RunTime start_time total_elapsed_time
284 2016-04-07 16:14:03.690 2016-04-07 16:08:14.587 1419976
私の計算*では、経過時間は約1,419,976ではなく、約349,103です。それは4倍以上ずれています。
*現在の時刻とstart_timeの差(ミリ秒単位)から、つまり
SELECT DATEDIFF(MILLISECOND, '2016-04-07T16:08:14.587', '2016-04-07T16:14:03.690');
サーバー情報は次のとおりです。
SELECT @@VERSION;
Microsoft SQL Server 2012 - 11.0.5592.0 (X64)
Apr 17 2015 15:18:46
Copyright (c) Microsoft Corporation
Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
この矛盾の原因は何ですか?