删除谓词语法
InfluxDB 使用类似 InfluxQL 的谓词语法来确定要删除哪些数据点。 InfluxDB 使用删除谓词来评估删除请求中指定的时间范围内的点的序列键。 对于给定的谓词,序列键评估为 true
的点将被删除。 序列键评估为 false
的点将被保留。
删除谓词由一个或多个谓词表达式组成。 谓词表达式的左操作数是列名。 右操作数是列值。 使用比较运算符比较操作数。 使用逻辑运算符组合两个或多个谓词表达式。
删除谓词示例
key1="value1" AND key2="value"
具有特殊字符或关键字的谓词
如果您的谓词包含关键字或带有特殊字符的字符串,请将每个关键字或字符串用转义引号括起来,以确保正确解析谓词字符串。
由于删除谓词遵循 InfluxQL 语法,因此与您的标签名称匹配的任何 InfluxQL 关键字都需要转义。 关键字不区分大小写。
// Escaped due to the "-"
"_measurement=\"example-dash\""
// Escaped because "Name" is a keyword
"_measurement=example and \"Name\"=predicate"
删除数据时的列限制
InfluxDB 2.7 支持通过任何列或标签删除数据,除了以下列或标签
_time
_field
_value
InfluxDB 2.7 不支持按字段删除数据。
逻辑运算符
逻辑运算符连接两个或多个谓词表达式。
运算符 | 描述 |
---|---|
AND | 表达式要为 true ,左操作数和右操作数都必须为 true 。 |
比较运算符
比较运算符比较左操作数和右操作数,并返回 true
或 false
。
运算符 | 描述 | 示例 | 结果 |
---|---|---|---|
= | 等于 | "abc"="abc" | true |
删除谓词示例
按测量删除点
以下操作将删除 sensorData
测量中的点
_measurement="sensorData"
按标签集删除点
以下操作将删除 us-west
区域中 prod-1.4
主机中的点
host="prod-1.4" AND region="us-west"
限制
删除谓词语法具有以下限制。
- 删除谓词不支持正则表达式。
- 删除谓词不支持
OR
逻辑运算符。 - 删除谓词仅支持相等 (
=
),不支持不等 (!=
)。 - 删除谓词可以使用任何列或标签,除了
_time
、_field
、或_value
。
此页面是否有帮助?
感谢您的反馈!