Nei*_*ght 0 sql-server-2008-r2 date-format
我有 2 条记录,一条是停止时钟停止的详细信息,另一条是开始的。我在每条记录中只有一个日期值。我正在尝试找出停止日期和开始日期之间的差异。我正在寻找指针。我想通过做这样的事情:
SELECT e1.ID, MIN(e1.EventTime) AS [StopTotalMinutes]
,MAX(e2.EventTime) AS [StartTotalMinutes]
FROM event AS e1
JOIN event AS e2
ON e1.ID = e2.ID
Run Code Online (Sandbox Code Playgroud)
我本来可以解决一些问题,但我失败了。
所以,表和一些样本数据是:
ID | EventTime | Action
1 2012-01-01 10:00 Stop
1 2012-01-01 13:31 Start
1 2012-01-03 09:45 Stop
2 2012-01-01 11:12 Stop
2 2012-01-10 15:35 Start
2 2012-01-11 08:39 Stop
Run Code Online (Sandbox Code Playgroud)
这应该这样做:
SELECT e1.ID, DATEDIFF(MINUTE,e1.EventTime,e2.EventTime) [Minutes]
FROM (SELECT * FROM event WHERE Action = 'Start') AS e1
LEFT JOIN (SELECT * FROM event WHERE Action = 'Stop') AS e2
ON e1.ID = e2.ID
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
272 次 |
| 最近记录: |