influxdb 进行数据删除和修改
本文为博主原创,转载请注明出处:
1.条件删除数据
InfluxDB 只支持基于时间的删除操作。
可以使用 DELETE
语句来删除指定时间范围内的数据。例如,以下的 SQL 语句将删除 measurement_name 表中时间在 '2023-06-30' 到 '2023-06-30 15:16:01' 之间的所有数据:
DELETE FROM measurement_name WHERE time > '2023-06-30' AND time < '2023-06-30 15:16:01'
或者删除指定 time 时间戳的数据:
DELETE FROM measurement_name WHERE time =1702018813637933176
删除时只能根据time进行条件删除,如果根据其他条件字段进行删除会提示: fields not supported in WHERE clause during deletion
需要注意以下几点:
- 只能根据time时间戳值进行条件删除
- InfluxDB中的删除操作是不可逆的,请谨慎执行。
- 删除操作会导致磁盘空间被释放,但可能会对性能产生一定影响。
2.修改数据
InfluxDB 不支持对已有的数据进行直接修改。相反,它采用覆盖写入(overwrite)的方式来实现近似的修改效果。
使用INSERT
语句将修改后的数据重新写入测量项,并确保时间戳与原始数据相同。
INSERT measurement_name field1=new_value,field2=modified_value,field3=another_modified_value,tag_key=tag_value 1620072000000000000
使用示例说明:
修改influxdb中查询出来数据的msg,修改结束后再重新查询发现修改成功。
修改