InfluxDB混合聚合函数与非聚合字段/值

时间:2017-09-05 08:35:14

标签: influxdb non-relational-database

我有以下问题: 我需要计算某些任意ID相等的连续点之间的差异。以下内容:

SELECT difference(value_field) FROM mesurementName WHERE "IdField" = '10'

Works,返回每个连续点与IdField之间的差异但是IdField丢失(仅time传播到查询结果)。在我的情况下,time不是唯一的(即,测量可能包含许多具有相同timestamp但不同IdField的点。所以我试过了:

SELECT difference(value_field), IdField FROM mesurementName WHERE "IdField" = '10'

产生: error parsing query: mixing aggregate and non-aggregate queries is not supported!!

我的下一次尝试是使用子查询:

SELECT IdField, diff
FROM (
    SELECT 
        difference(flow_val) as diff
    FROM 
        mesurementA
    WHERE  "IdField" = '10' 
)

这导致null中的IdField值始终为JOIN

我想请求您帮助或建议如何解决问题。顺便说一句,我们正在使用InfluxDB 1.3,它不再支持 System.Configuration.AppSettingsReader settingsReader = new AppSettingsReader(); string key = (string)settingsReader.GetValue("MyProperty", typeof(String));

1 个答案:

答案 0 :(得分:0)

如果有人会像我一样卡住,那么解决方案就是:

SELECT difference(value_field) FROM mesurementName GROUP BY "IdField"

以上某种方式隐式地将“IdField”添加到结果系列中,并使用INTO子句传播到结果测量值

相关问题