我有一个表格,里面包含了他们全天都做了些什么的信息。我需要获取每个任务的开始时间/结束时间。
目前我可以拉取每个任务的时间戳,但我希望创建开始时间和结束时间列。开始时间将是前一行的时间戳,结束时间将是当前行的时间戳。
有什么简单的方法可以做到这一点吗?下面是我目前正在使用的查询。
select
Timestamp,
Sku,
Station,
Username,
ActionType
from OverallLogs
where
and ActionType = 'Put'
and Username = 'Name'
and timestamp < DateAdd(Day, DateDiff(Day, 0, GetDate())+1, 0)
AND timestamp >= DateAdd(Day, DateDiff(Day, 0, GetDate()), 0)
Order by timestamp desc发布于 2017-06-04 03:15:44
您可能想要使用sql选项,请查找有关链接SQL Find difference between previous and current row的帮助
如果您第一条记录是开始,下一条记录是任务结束,我的建议是为活动保留单一记录。
如果您不想更改架构,则可以再添加一列来描述任务类型列,说明它是开始还是结束。它将在将来的查询中对您有所帮助。
https://stackoverflow.com/questions/44347592
复制相似问题