这是我的桌子。
id section secstart secstop
101 1 2010-03-06 02:27:49.000 2010-03-06 02:34:32.000
101 2 2010-03-06 02:28:25.000 2010-03-06 02:34:32.000
101 3 2010-03-06 02:29:58.000 2010-03-06 02:34:32.000
102 1 2008-09-11 02:15:22.000 2008-09-11 02:34:55.000
102 2 2008-09-11 02:25:32.000 2008-09-11 02:34:55.000
对于id,我想知道每个部分的时间。 正如您所看到的,每个部分的secstart时间不同,但是对于id的所有部分,secstop时间是相同的。所以第1部分所用的时间是secstart(2) - sectstart(1)等等,但是对于最后一部分,时间将是secstop - secstart。 我希望结果如下:
id section secstart secstop diff
101 1 3-6-2010 2:27:49 3-6-2010 2:34:32 1
101 2 3-6-2010 2:28:25 3-6-2010 2:34:32 1
101 3 3-6-2010 2:29:58 3-6-2010 2:34:32 5
102 1 9-11-2008 2:15:22 9-11-2008 2:34:55 10
102 2 9-11-2008 2:25:32 9-11-2008 2:34:55 9
答案 0 :(得分:0)
您可以使用sed -i '/^9856,/s/[^,]*/Yes/28' file.csv
:
DATEDIFF()
答案 1 :(得分:0)
只需获取min()
开始时间以及每个max()
的{{1}}结束时间 - 然后使用ID
。
DATEDIFF()
修改强>
with cte as(
select
ID
,min(secstart) as secstart
,max(secstop) as secstop
from
YourTable
group by ID)
select
ID
,datediff(minute,secstart,secstop)
from
cte