聚合(Aggregate)函数的输入与输出是多对一的关系,即将多条输入记录聚合成一条输出值。本文介绍数据分析支持的聚合函数的命令格式、参数说明及示例。

说明 物联网数据分析中,仅在指标配置中支持聚合函数。具体操作,请参见 新增指标

AVG

  • 命令格式
    double avg(double <colname>)
    decimal avg(decimal <colname>)
  • 命令说明

    计算平均值。

  • 参数说明

    value:必填。可为DOUBLE或DECIMAL类型。如果输入为STRING或BIGINT类型,会隐式转换为DOUBLE类型后参与运算,其它类型返回报错。当value值为NULL时,不参与计算。BOOLEAN类型不允许参与运算。

  • 返回值

    如果输入DECIMAL类型,返回DECIMAL类型。输入其他合法的类型时,会返回DOUBLE类型。

  • 示例

    获取日温度(temperature)的平均温度。

    avg(temperature);

COUNT

  • 命令格式
    bigint count([distinct|all] <value>)
  • 命令说明

    计算记录数。

  • 参数说明
    • distinct|all:可选。表示在计数时是否去除重复记录,默认为all,即计算全部记录。如果指定distinct,则只计算唯一值数量。
    • value:必填。可以为任意类型。当value值为NULL时,该行不参与计算。
  • 返回值说明

    返回BIGINT类型。

  • 示例
    • 示例1:计算每日上报温度(temperature)数量。
      count(temperature);
    • 示例2:通过distinct去重,计算不同温度数量。
      count(distinct temperature);

MAX

  • 命令格式
    max(<colname>)
  • 命令说明

    计算最大值。

  • 参数说明

    value:必填。列值可以为任意类型。当value值为NULL时,该行不参与计算。BOOLEAN类型不允许参与运算。

  • 返回值说明

    返回值的类型与value类型相同。

  • 示例

    计算每日上报温度(temperature)最大值。

    max(temperature);

MIN

  • 命令格式
    min(<value>)
  • 命令说明

    计算最小值。

  • 参数说明

    value:必填。列值可以为任意类型。当value值为NULL时,该行不参与计算。BOOLEAN类型不允许参与计算。

  • 返回值说明

    返回值的类型与value类型相同。

  • 示例

    计算每日上报温度(temperature)最小值。

    min(temperature);

SUM

  • 命令格式
    sum(<value>)
  • 命令说明

    计算汇总值。

  • 参数说明

    value:必填。列值可以为DOUBLE、DECIMAL或BIGINT类型。如果输入为STRING类型,会隐式转换为DOUBLE类型后参与运算。当value值为NULL时,该行不参与计算。BOOLEAN类型不允许参与计算。

  • 返回值说明

    输入BIGINT类型时,返回BIGINT类型。输入为DOUBLE或STRING类型时,返回DOUBLE类型。

  • 示例

    计算每日上报温度(temperature)总和。

    sum(temperature);