需要SQL查询(MS)来指示状态转换时间

时间:2014-10-28 18:58:11

标签: html sql-server transition status delta

我对T-SQL非常狡猾,但我还没有深入研究跨度和分区,我怀疑需要这样的东西。我有一个包含两列的表,日期时间和状态,状态为" ON"或" OFF"。我正在寻找一个查询,它会给我一个结果集,说明从OFF到ON或从ON到OFF的转换。

为了澄清,我有一个进程报告每个(间隔)外部对象的状态,因此将有多个ON状态'然后是多个OFF状态' - 我对过渡感兴趣。

可选地,最后一次转换与此转换之间的时间差(例如,它转换为" ON"之前已经过了多长时间" OFF")

如果没有游标,我没有看到任何方法。

提前谢谢!

1 个答案:

答案 0 :(得分:1)

什么版本的SQL? 2012年对LEAD和LAG运营商提供支持,这应该有效。

SELECT LAG(field) over([partition by field[,field]] order by field[,field])