【问题标题】:Influxdb 2.0 Flux - How to return 0 instead nullInfluxdb 2.0 Flux - 如何返回 0 而不是 null
【发布时间】:2021-04-27 16:27:53
【问题描述】:
我想计算大于特定值的值的数量。
数据:
from(bucket: "bucket name")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r._value > 35)
|> count()
如果处理数据范围内没有值大于指定值,则流入不返回任何内容(无数据)。
【问题讨论】:
标签:
influxdb
influxdb-2
flux-influxdb
【解决方案1】:
一个小技巧的解决方案......
而不是filter() 和count() - 需要使用map() 和sum()
from(bucket: "bucket name")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> map(fn: (r) => ({ r with _value: if r._value 35 then 1 else 0 }))
|> sum()