我需要运行一个查询,该查询必须根据一个动态字段和它自己的值过滤一些数据,返回已经聚合的其余动态字段值。
我在没有字段值过滤器的情况下运行查询,但我没有找到基于一个动态字段和值包含此过滤器的语法。
这是我的查询:
from(bucket: "dairy/autogen")
|> range(start: dashboardTime)
|> filter(fn: (r) => r.UnitRunning == "1")
|> filter(fn: (r) => r._measurement == "?????????")
|> filter(fn: (r) => r.Customer == "?????????????")
|> filter(fn: (r) => r.UnitNumber == "1")
|> filter(fn: (r) => r.UnitRecipe == "1")
-- V0, All other fields that should return with their value aggregated
|> filter(fn: (r) => r._field == "?????????" or ...... or r._field == "KPISpecEnergyCons" or r._field == "?????????" )
-- **** V1, doesn't work ****
-- |> filter(fn: (r) => r.KPISpecEnergyCons < 3)
-- **** V2, only returns this FIELD and not all the others ****
-- |> filter(fn: (r) => r._field == "KPISpecEnergyCons" and r._value < 3)
|> aggregateWindow(every: 1h, fn: mean)
|> drop(columns: ["UnitCIP","UnitOff","UnitRecipe","UnitRunning","UnitStandby"])
|> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value")
恢复:
我需要运行 V0(应返回所有字段)和 V2(仅当字段名为“X”且其值低于 3 时才有效)版本运行,但两者都只返回字段“X”,并且如果只有 V0,则返回所有字段,但字段 X 的值也包含在聚合函数中(脚本底部的第 3 行)
PS:运行 InfluxDB v1.8
这个怎么做?TIA,路易斯