gpt4 book ai didi

sql-server - 确定 1 到 0 转换之间的时间

转载 作者:行者123 更新时间:2023-12-03 00:46:53 28 4
gpt4 key购买 nike

我的表格显示泵的开/关状态如下

Value   timestamp
1 2013-09-01 00:05:41.987
0 2013-09-01 00:05:48.987
1 2013-09-01 00:05:59.987
0 2013-09-01 00:06:15.987
1 2013-09-01 00:06:34.987
etc etc.

我需要一个 MSSQL 查询,该查询可能需要一个月的时间,并告诉我开启的分钟数 (1) 和关闭的分钟数 (0),即占空比

最佳答案

使用CTERowNumber()函数 Fiddle demo :

declare @date date = '20130925'

;with cte as (
select value, timestamp, row_number() over(order by timestamp) rn
from table1
)
select c1.value, sum(datediff(second, c1.timestamp, c2.timestamp)) diffInSeconds
from cte c1 join cte c2 on c1.rn = c2.rn -1
where month(c1.timestamp) = month(@date) and month(c2.timestamp) = month(@date)
group by c1.value

关于sql-server - 确定 1 到 0 转换之间的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19575244/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com