如何解决InfluxDB 计算信号打开的时间
我对 boolean
类型的值进行了一些测量,想计算信号在特定时间段内处于 true
状态的时间。
例如:
日期时间 | 状态 |
---|---|
01.01.2021 01:00 | 真实 |
01.01.2021 04:00 | 真实 |
01.01.2021 05:30 | 假 |
02.01.2021 23:00 | 真实 |
03.01.2021 01:30 | 假 |
05.01.2021 06:00 | 真实 |
应该变成:
日期时间 | 持续时间(1h) |
---|---|
01.01.2021 | 4.5 |
02.01.2021 | 1 |
03.01.2021 | 1.5 |
04.01.2021 | 0 |
05.01.2021 | 18 |
我知道 influx
具有 ELAPSED
函数,该函数返回后续记录之间的时间,但这似乎并没有让我找到任何地方。我也用 flux
尝试过,但也遇到了障碍(这只是出于学术目的,我需要使用 InfluxQL)。
我找到了 this,但解决方案是使用 INTEGRAL
(这要求您的值是 0 或 1 而不是布尔值,甚至有人没有得到正确的值)值)并切换到 Timescale DB。
令我震惊的是,Influx 仍然不支持这一点,这似乎是使用 influx 的数据类型的最常见用例。
如果有人提供我可能遗漏的任何信息或想法,我将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。