我是 influxdb 的新手。我刚开始阅读涌入文档。
我似乎无法获得相当于 'select count(*) from table' 在 influx db 中工作。
我有一个叫做购物车的测量:
time status cartid
1456116106077429261 0 A
1456116106090573178 0 B
1456116106095765618 0 C
1456116106101532429 0 D
但是当我尝试做
select count(cartid) from cart
我得到错误
ERR: statement must have at least one field in select clause
只要不存在名称为
count
的字段或标签,这就有效:
SELECT SUM(count) FROM (SELECT *,count::INTEGER FROM MyMeasurement GROUP BY count FILL(1))
如果它确实为
count
字段使用其他名称。这通过首先选择包括未填充字段 (count
) 的所有条目然后按未填充字段分组来工作,这只允许我们使用填充运算符将 1
分配给 count
的每个条目。然后我们在超级查询中选择计数字段的总和。结果应该是这样的:
name: MyMeasurement
----------------
time sum
0 47799
这有点老套,但这是在所有条目中不存在始终存在的字段时保证 all 条目计数的唯一方法。