当测量名称中包含连字符时 InfluxDB 查询问题
InfluxDB Query issue when measurement name have hyphen in it
我正在使用 Java 并查询 InfluxDb,如下所示,
queryResult1 = influxDB.query(new Query("SELECT last(timestamp) FROM vale" , eachDatabase));
这个语句工作正常,但是当名称有任何特殊字符时,例如如果测量名称是 "vale-ab" 而不是 vale,它将不起作用。
我得到的错误是:
java.lang.RuntimeException: {"error":"error parsing query: found -, expected ; at line 1, char 34"}
知道如何在查询中转义测量名称。
您需要用双引号将您的测量值括起来 "
。
差:
select * from a-b
ERR: error parsing query: found -, expected ; at line 1, char 16
好:
select * from "a-b"
name: a-b
time tag1 value
---- ---- -----
1434089562000000000 10i 5
我没有在这台机器上安装 Java
,但下面的代码应该可以解决您的问题。
queryResult1 = influxDB.query(new Query("SELECT last(timestamp) FROM \"vale-vale\"" , eachDatabase));
我正在使用 Java 并查询 InfluxDb,如下所示,
queryResult1 = influxDB.query(new Query("SELECT last(timestamp) FROM vale" , eachDatabase));
这个语句工作正常,但是当名称有任何特殊字符时,例如如果测量名称是 "vale-ab" 而不是 vale,它将不起作用。
我得到的错误是:
java.lang.RuntimeException: {"error":"error parsing query: found -, expected ; at line 1, char 34"}
知道如何在查询中转义测量名称。
您需要用双引号将您的测量值括起来 "
。
差:
select * from a-b
ERR: error parsing query: found -, expected ; at line 1, char 16
好:
select * from "a-b"
name: a-b
time tag1 value
---- ---- -----
1434089562000000000 10i 5
我没有在这台机器上安装 Java
,但下面的代码应该可以解决您的问题。
queryResult1 = influxDB.query(new Query("SELECT last(timestamp) FROM \"vale-vale\"" , eachDatabase));