如何按InfluxDB中的字段计数进行分组?

时间:2016-03-24 20:32:52

标签: influxdb

我在InfluxDB中有一些数据是连接某些TCP连接的事件。所以测量是connection_events,标签是:连接系统的mac_address,以及一些其他元数据。值只是connected = true | false

我想做的是这样的事情:

select count(mac_address), mac_address 
from connection_events 
where count(mac_address) > X 
group by mac_address

换句话说,我希望看到如下结果:

  

28,ABCD

     

14,EFGH

     

3,XYZQ

然而,InfluxDB不喜欢这种查询。我无法弄清楚如何解析连接事件的数据集并通过mac地址聚合它们。

1 个答案:

答案 0 :(得分:4)

InfluxQL中的函数在SELECT子句之外无效,并且还没有子查询或HAVING子句。

但是,您可以使用Continuous Queries

完成所需操作

使用CQ计算count(mac_address)并将其存储在新测量foo中。 CREATE CQ... SELECT COUNT(mac_address) AS count INTO foo FROM connection_events GROUP BY time(5m), *然后,对于您的图表,您可以查询select count from foo where count > X group by mac_address