[英]Minus values from the same column
我在 AdventureWorks 数据库中摆弄,可能已经找到了一种方法来获得你正在寻找的东西(虽然我是新手,所以有更多经验和知识的人可能会有更好的主意)。 但希望这提供了一些起点。 我用 Row_Number 创建了 2 个 CTE,第二个 CTE 有 Row_Number-1 作为计数。 然后加入这两个 CTE 并在 event_datetimes 上做了一个 datediff。
WITH Example_CTE (Row, UserID, Event_datetime)
AS
(
SELECT ROW_NUMBER() OVER(ORDER BY (SELECT NULL)) AS Row
,UserID
,Event_datetime
FROM table
ORDER BY UserID,Event_datetime DESC
)
,
Example_CTE2 (Row, UserID, Event_datetime)
AS
(
SELECT ROW_NUMBER() OVER(ORDER BY (SELECT NULL))-1 AS Row
,UserID
,Event_datetime
FROM table
ORDER BY UserID, Event_datetime DESC
)
SELECT Example_CTE.UserID
,DATEDIFF(day, Example_CTE.Event_datetime, Example_CTE2.Event_datetime) as TimeDiff
FROM Example_CTE
left outer join Example_CTE2 on Example_CTE.row = Example_CTE2.Row
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.