我想計算用戶的中斷持續時間(中斷持續時間=解鎖鎖定時間)。如何計算SQL中同一列中兩個日期之間的持續時間
任何人都可以請告訴我如何計算。下面
是我的表
Event id EventDate EventType Userid
1 2015-11-05 13:54:28.900 Login 10
2 2015-11-05 13:55:27.527 Lock 10
3 2015-11-05 13:55:27.537 Break 10
4 2015-11-05 13:55:37.037 Unlock 10
5 2015-11-05 13:56:13.953 Break 10
7 2015-11-05 14:33:26.347 Login 10
8 2015-11-05 14:33:46.243 TaskStartedInManual 10
9 2015-11-05 14:34:34.570 TaskPause 10
我休息公式並不總是一樣的。在下面的例子中,我的Break事件處於Login-Taskpause之間。因此,基本上每當EventType出現中斷時,就計算Date-Next行的前一行。如何實現這一點?
EventId EventDate EventType Userid
1 2015-11-05 13:54:28.900 Login 10
2 2015-11-05 13:55:27.527 Lock 10
3 2015-11-05 13:55:27.537 Break 10
4 2015-11-05 13:55:37.037 Unlock 10
5 2015-11-05 14:33:26.347 Login 10
6 2015-11-05 14:33:46.243 Break 10
7 2015-11-05 14:34:34.570 TaskPause 10
所需的輸出將是
Userid Break_Duration(In sec)
10 10
10 68
你可以發佈你的願望輸出嗎? –
你能解釋爲什麼是68,我沒有看到產生什麼價值。 –
值68來自日期差異Login-TaskPause例如選擇DATEDIFF(s,'2015-11-05 14:33:26.347','2015-11-05 14:34:34.570') – Rajashri