比较来自不同存储桶的值
此示例使用 NOAA 水样本数据。
此示例比较来自最新数据点的值与另一个存储桶中存储的平均值。当使用平均值来计算阈值检查时,这非常有用。
以下查询
- 使用
range()
来定义时间范围。 - 获取
means
存储桶中的最后一个值,并使用last()
将其与noaa
存储桶中的最后一个值进行比较。 - 使用
join()
合并结果 - 使用
map()
计算差异
means = from(bucket: "weekly_means")
|> range(start: 2019-09-01T00:00:00Z)
|> last()
|> keep(columns: ["_value", "location"])
latest = from(bucket: "noaa")
|> range(start: 2019-09-01T00:00:00Z)
|> filter(fn: (r) => r._measurement == "average_temperature")
|> last()
|> keep(columns: ["_value", "location"])
join(tables: {mean: means, reading: latest}, on: ["location"])
|> map(fn: (r) => ({r with deviation: r._value_reading - r._value_mean}))
示例结果
location | _value_mean | _value_reading | deviation |
---|---|---|---|
coyote_creek | 79.82710622710623 | 89 | 9.172893772893772 |
santa_monica | 80.20451339915374 | 85 | 4.79548660084626 |
此页是否对您有帮助?
感谢您的反馈!