首页 > 解决方案 > InfluxDB 中的嵌套查询

问题描述

我正在尝试在 InfluxDB 中进行一些嵌套查询。

我正在从许多设备收集信息并将其保存在 InfluxDB 表中。我正在使用 TAGS 来识别每个设备。

在 SQL 中可以使用以下查询:

select salary from Employee where salary > (select avg(salary) from employee)

我可以在 Influx 中使用类似的查询结构吗?(在涌入的情况下,由于信息是基于时间序列的,也许我需要包括一些“按时间分组”)。

让我详细解释一下:

SELECT meas FROM table_name WHERE meas > 15 

返回值大于 15 的所有测量值。

SELECT mean(meas) FROM table_name GROUP BY TIME (120m)

每 2 小时返回一次所有设备的平均温度。

有什么方法可以将两个查询结合起来并获得大于所有测量平均值的所有测量值?

非常感谢您提前。

标签: influxdb

解决方案


InfluxDB 现在应该支持嵌套查询。您可以尝试以下方法:

SELECT mean(meas) FROM (SELECT meas FROM table_name WHERE meas > 15) GROUP BY time(20m)

推荐阅读