更新与InfluxDB中的条件匹配的多个字段值

时间:2018-01-03 02:27:37

标签: sql-update influxdb

在InfluxDB测量中,如何更新与查询匹配的点的字段值?这仍然是not easily doable as of v1.6吗?

正如GitHub门票中的示例所示,实现这样的事情的最简洁方法是什么?

UPDATE access_log SET username='something' WHERE mac='xxx'

比通过updating individual points从客户端推送所有内容更好吗?

2 个答案:

答案 0 :(得分:5)

问:如何更新与查询匹配的点的字段值?从v1.4开始,这仍然不易实现吗?

答:据我所知,还没有一种简单的方法可以在版本update中完成1.4

只有通过覆盖才能更新

Field value。也就是说,要覆盖其值,您需要知道您的积分的详细信息。这些详细信息包括timestampseries信息,这是其所在的衡量标准及其对应的tags

注意:此“更新”策略只能用于更改field值,而不能更改tag值。要更新tag值,您需要先点DELETE点数据,然后使用更新后的标记和值重写整个点数据。

问:还有什么能比通过更新个别积分从客户端推送所有内容更好?

答: Influxdb支持multi-point write。因此,如果您可以构建过滤器以预先选择点的小数据集,请修改其field值,然后批量覆盖它们。

答案 1 :(得分:-1)

可能进行更新,并采用以下格式:

INSERT测量,tag_name = tag_value_no_quotes value_key_1 = value_value_1,value_key_2 = value_value_2时间

例如,我想在框度量中的时间1526988768877018669更新带有标签my_box的行:

INSERT box,box_name = my_box item_1 ='apple',item_2 ='melon'1526988768877018669