【发布时间】:2018-09-27 20:13:22
【问题描述】:
我有一个查询,它在不同的行上分组开始和停止时间,其中批次编号 1 是开始时间,批次编号 2 是停止时间,我需要对它们进行日期差异。我尝试添加行号并尝试执行日期差异行 1 和 2、3 和 4 等操作,但没有成功。
所以我必须在 1 和 3、2 和 4 上进行日期差异,以此类推,只要批次 1 和 2 在一起。
这是我的数据的样子:
RowNumber OrderNumber IDCode DateVal MilestoneID BatchNumber
-------------------------------------------------------------------
1 5017555.1 4077213 2018-08-30 12:22:51.253 15 1
3 5017555.1 4081502 2018-09-05 12:41:08.817 16 2
2 5017555.1 4095474 2018-09-18 10:42:47.457 15 1
4 5017555.1 4095665 2018-09-18 12:07:11.083 16 2
【问题讨论】:
-
这些 RowNumber 值是否正确?
-
开始和停止时间在哪里?我看不到任何看起来像日期或时间数据类型的东西。
-
那么您已经有一个计算这些批号的查询?
-
开始时间为第1行第1批,值在DateVal中,停止时间为第3行第2批DateVal。
-
抱歉,我的副本格式都搞砸了,所以我将其编辑为正确的日期时间值。我确实有一个查询将开始和结束时间拉出来并将它们分组为 1 和 2 用于开始和停止。
标签: sql sql-server tsql sql-server-2008-r2