为了查看Grafana上的可视化,我使用influxQL从进水数据库查询数据。表中有列,这些基本上是字段和标记,我想通过按小时时间对标记列进行分组来计数它的不同值。这是我的查询
SELECT COUNT(DISTINCT("tag")) FROM "measurement" GROUP BY time(1h)
在运行这个总唯一标记= 10之后,我不会得到输出。
Time tag
1:00:00 1
1:10:10 4
1:30:10 3
1:45:00 1
2:00:00 3
2:50:00 3
3:00:00 10
3:13:00 5
我期待的是-
Time tag
1st hour 3 ( because 1,4,3 are 3 unique ids in that hour frame)
2nd hour 1
3rd hour 2
发布于 2022-11-11 07:18:02
COUNT DISTINCT
不能直接在标记上使用(InfluxQL不是SQL!),因此需要子查询,例如:
SELECT COUNT(DISTINCT "tag") as "counttag"
FROM (
SELECT "time","tag","Value(field)"
FROM "measurement"
WHERE $timeFilter
)
GROUP BY time(1h)
确保您在InfluxDB中使用了UTC时间戳,并记住默认情况下Grafana将结果“移动”到本地浏览器时区。
https://stackoverflow.com/questions/74390294
复制相似问题