问题描述
我有 2 个室外温度源,可以保存在 InfuxDB v2 中。现在我正在尝试在 Grafana 中编写 Flux 查询来显示平均温度图。两种温度都有相同的“测量”、“场”和“地点”标签,区别仅在于“来源”标签。
from(bucket: "netatmo")
|> range(start: v.timeRangeStart,stop:v.timeRangeStop)
|> filter(fn: (r) =>
r._measurement == "meteodata" and
r._field == "temperature" and
r.where == "outdoor" and
r.source == "netatmo"
)
如果我没有指定 r.source,我的图表中有 2 条线。但我只需要一行,从 2 个值计算平均值。我怎样才能得到它?
也许问题是温度值没有存储在相同的时间戳中,因为它来自 2 个设备,并且当温度变化时,这会随机发送数据。有时每分钟发送两次温度,有时每 3 分钟发送一次。我需要 1 分钟时间范围内的平均值。
感谢您的帮助。
解决方法
分组是合并值的关键。
bq query -n 500 --format=pretty --use_legacy_sql=false "select * from bigquery-public-data.samples.shakespeare;"