influxdb:如何按大于 4 的字段进行过滤

influxdb : how do I filter by a field > than 4

我有以下显示所有记录的查询:

SELECT "ApparentPower" FROM "machine01" WHERE "pin_no" = 'pin 2 ' AND $timeFilter;

我想按字段“表观功率”进行过滤,只显示大于 10 的值。我该怎么做?

如果我 运行 查询 SELECT "ApparentPower" FROM "machine01" WHERE "pin_no" = 'pin 2 ' AND $timeFilter AND "ApparentPower" > 10; 即使有大于 10 的值,我也没有返回任何值。

此外,如果我 运行 查询 SELECT "ApparentPower" FROM "machine01" WHERE "pin_no" = 'pin 2 ' AND $timeFilter AND "ApparentPower" < 10; 我没有再次返回任何值。

但是,如果我 运行 查询 SELECT "ApparentPower" FROM "machine01" WHERE "pin_no" = 'pin 2 ' AND $timeFilter AND "ApparentPower" != 10; 我会返回所有值。

我已经使用命令 curl -sL -I localhost:8086/ping:

检查了 influx im 运行ning 的版本
HTTP/1.1 204 No Content
Content-Type: application/json
Request-Id: f4132538-7129-11eb-b770-000000000000
X-Influxdb-Version: 1.1.1
Date: Wed, 17 Feb 2021 14:10:56 GMT

很可能,“ApparentPower”字段作为字符串写入 InfluxDB。

您可以使用以下方法验证这一点:SHOW FIELD KEYS FROM "machine01"

字段必须写成整数或浮点数才能与<

进行比较

更改数据类型:

您不能更改现有测量字段的数据类型,但您可以:

  • 写入不同的字段名称,
  • 使用 DROP MEASUREMENT machine01
  • 删除测量
  • 如果启用了分片,请等待写入到下一个分片。