【发布时间】:2010-01-11 16:47:10
【问题描述】:
我想从下表 1 中取平均时间差。这些值不是连续的,有时时间值会重复,所以我需要 1)按时间排序,2)丢弃非唯一值,3)执行时间差(以毫秒为单位),然后 4)平均得到的时间差价值观。此外,我想 5)将 datediff 操作限制在选定的时间范围内,例如 WHERE _TimeStamp >= '20091220 11:59:56.1' AND _TimeStamp = '20091220 11:59:56.8'。我很困惑如何把这一切放在一起!
表 1:
_时间戳
2009-12-20 11:59:56.0
2009-12-20 11:59:56.5
2009-12-20 11:59:56.3
2009-12-20 11:59:56.4
2009-12-20 11:59:56.4
2009-12-20 11:59:56.9
【问题讨论】:
-
您想要“平均时间”,还是想要距离下一个事件的时间? (直到下一个日期条目的持续时间以毫秒为单位)......“平均时间”没有多大意义。如果这是你想要的,请解释一下。
-
我想取行排序后的平均时间差。位于所需日期范围内的已排序且唯一的行是 2009-12-20 11:59:56.3、2009-12-20 11:59:56.4 和 2009-12-20 11:59:56.5。这些值之间的时间差(以毫秒为单位)为 100、100。因此这两个时间差的平均值为 100 毫秒。
-
您认为上述时间的答案是什么?
标签: sql sql-server join unique datediff