如何在InfluxDB?中查询一次测量中具有不同标记的系列之间的差异;

如何在InfluxDB?中查询一次测量中具有不同标记的系列之间的差异;,influxdb,Influxdb,例如,一次测量中存储的两个不同位置的温度数据,如 time temperature location ---- ---- ---- 1 15 A 2 20

例如,一次测量中存储的两个不同位置的温度数据,如

time                temperature               location
----                ----                              ----
1                     15                                 A
2                     20                                 B
3                     17                                 A
4                     18                                 B
如何通过查询计算A和B处的温度差? i、 e.期望类似“从测量中选择a.temperature-b.temperature,其中位置='a'作为a,其中位置='b'作为b”


谢谢,Influx查询语言不支持跨度量的函数。

您可以使用它,例如

SELECT last("temp_a") - last("temp_b") FROM (
    SELECT "gauge" AS "temp_a" FROM "measurement" WHERE ("location"='A') AND $timeFilter
),(
    SELECT "gauge" AS "temp_b" FROM "measurement" WHERE ("location"='B') AND $timeFilter
) GROUP BY time($__interval) fill(null)

您应该能够使用kapacitor计算出这两个指标中的其他指标,如果您可以使用kapacitor,我可以尝试帮助您编写它