鉴于' location'是一个名为places
的Influxdb存储桶中的字符串字段,其数据类似于以下内容:
time | location
--------------------+----------
1477568542209000000 | London
1477568542409000000 | Essex
1477568542569000000 | London
1477568542589000000 | Sussex
1477568542600000000 | Sussex
1477568542940000000 | London
我如何汇总那些以最常见的方式排序 - 最不常见,每个都有计数?我期望得到像这样的东西:
location | count
---------+-------
London | 3
Sussex | 2
Essex | 1
我的第一个想法是使用SELECT TOP(location, 10) FROM places
,但这不适用于字段上的字符串。我还缺少一种替代方法吗?
答案 0 :(得分:0)
不幸的是,我无法想到在不修改架构的情况下实现此类结果的好方法。即便如此,答案也不是特别好
如果您将架构修改为类似
places,location=London x=1i <timestamp>
然后您可以运行以下查询
SELECT count(x) INTO places_count FROM places GROUP BY location
SELECT top("count",10), location FROM places_count
或者,您可以保留所拥有的架构并将Kapacitor引入混合。