我想执行查询以删除重复项。我在这里定义的重复是一个测量,我们有一个以上的数据点。它们将具有不同的标签,因此默认情况下它们不会被覆盖,但我想删除最旧的插入,无论标签如何。
因此,例如,登录的测量(它确实没有意义,但它是为了避免使用抽象实体):
> Email | Name | TS | Login Time
>
> a@a.com | Alice | xxxxx1000 | 2017-05-19
> a@a.com | Alice | xxxxx1000 | 2017-05-18
> a@a.com | Alice | xxxxx1000 | 2017-05-17
> b@b.com | Bob | xxxxx1000 | 2017-05-18
> c@c.com | Charlie | xxxxx1200 | 2017-05-19
我想删除第二行和第三行,因为数据点与第一行具有相同的时间戳,它是相同的度量但它们具有不同的登录时间,我想只采用最后一行。
我很清楚我可以通过查询来解决这个问题,但是要求比这更复杂(Grafana中的奇怪KPI数据的可视化),我需要删除实际的重复项(生成和加载两次)。
谢谢。
答案 0 :(得分:1)
您可以使用group by获取所有登录用户名,然后按时间顺序排序,以便最先登录最新登录时间,然后您可以删除剩余的登录用户名。
此外,您可能需要将最新项目复制到其他测量项,因为您无法删除Influxdb中的行。
为此,您可以使用限制1偏移0,以便只有最新的登录时间来自查询输出。
如果我理解正确,请告诉我。