详情页标题前

阿里云日志服务SLS聚合函数-云淘科技

详情页1

聚合函数用于对目标数执行计算并返回结果。本文介绍聚合函数的基本语法及示例。

日志服务支持如下聚合函数。

重要 在日志服务分析语句中,表示字符串的字符必须使用单引号(”)包裹,无符号包裹或被双引号(””)包裹的字符表示字段名或列名。例如:’status’表示字符串status,status或”status”表示日志字段status。

函数名称

语法

说明

arbitrary函数

arbitrary(x)

返回x中任意一个非空的值。

avg函数

avg(x)

计算x的算术平均值。

bitwise_and_agg函数

bitwise_and_agg(x)

返回x中所有值按位与运算(AND)的结果。

bitwise_or_agg函数

bitwise_or_agg(x)

返回x中所有值按位或运算(OR)的结果。

bool_and函数

bool_and(boolean expression)

判断是否所有日志都满足条件。如果是,则返回true。

bool_and函数等同于every函数。

bool_or函数

bool_or(boolean expression)

判断是否存在日志满足条件。如果存在,则返回true。

checksum函数

checksum(x)

计算x的校验和。

count函数

count(*)

统计所有的日志条数。

count(1)

统计所有的日志条数,等同于count(*)。

count(x)

统计x中值不为NULL的日志条数。

count_if函数

count_if(boolean expression)

统计满足指定条件的日志条数。

every函数

every(boolean expression)

判断是否所有日志都满足条件。如果是,则返回true。

every函数等同于bool_and函数。

geometric_mean函数

geometric_mean(x)

计算x的几何平均数。

kurtosis函数

kurtosis(x)

计算x的峰度。

map_union函数

map_union(x)

返回一列Map数据的并集。 如果Map中存在相同的键,则返回的键值为其中任意一个键的值。

max函数

max(x)

查询x中的最大值。

max(x, n)

查询x中最大的n个值。返回结果为数组。

max_by函数

max_by(x, y)

查询y为最大值时对应的x值。

max_by(x, y, n)

查询最大的ny值对应的x值,返回结果为数组。

min函数

min(x)

查询x中最小值。

min(x, n)

查询x中最小的n个值。返回结果为数组。

min_by函数

min_by(x, y)

查询y为最小值时对应的x值。

min_by(x, y, n)

查询最小的ny值对应的x值。返回结果为数组。

skewness函数

skewness(x)

计算x的偏度。

sum函数

sum(x)

计算x的总值。

arbitrary函数

arbitrary函数用于返回x中任意一个非空的值。

语法

arbitrary(x)

参数说明

参数

说明

x

参数值为任意数据类型

返回值类型

与参数值的数据类型一致。

示例

返回request_method字段中任意一个非空的字段值。

  • 查询和分析语句(调试)

    * | SELECT
      arbitrary(request_method) AS request_method
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

avg函数

avg函数用于计算x的算术平均值。

语法

avg(x)

参数说明

参数

说明

x

参数值为double、bigint、decimal或real类型。

返回值类型

double类型。

示例

返回平均延迟时间高于1000微秒的Project。

  • 查询和分析语句(调试)

    method: PostLogstoreLogs | SELECT
      avg(latency) AS avg_latency,
      Project
    GROUP BY
      Project
    HAVING
      avg_latency > 1000
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

bitwise_and_agg函数

bitwise_and_agg函数用于返回x中所有值按位与运算(AND)的结果。

语法

bitwise_and_agg(x)

参数说明

参数

说明

x

参数值为bigint类型。

返回值类型

bigint类型(二进制形式)。

示例

request_time字段的所有值进行按位与运算。

  • 查询和分析语句(调试)

    * | SELECT
      bitwise_and_agg(status)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

bitwise_or_agg函数

bitwise_or_agg函数用于返回x中所有值按位或运算(OR)的结果。

语法

bitwise_or_agg(x)

参数说明

参数

说明

x

参数值为bigint类型。

返回值类型

bigint类型(二进制形式)。

示例

request_time字段的所有值进行按位或运算。

  • 查询和分析语句(调试)

    * | SELECT
      bitwise_or_agg(request_length)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

bool_and函数

bool_and函数用于判断是否所有日志都满足条件。如果是,则返回true。bool_and函数等同于every函数。

语法

bool_and(boolean expression)

参数说明

参数

说明

boolean expression

参数值为布尔表达式。

返回值类型

boolean类型。

示例

判断所有请求的时间是否都小于100秒。如果是,则返回true。

  • 查询和分析语句(调试)

    * | SELECT
      bool_and(request_time < 100)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

bool_or函数

bool_or函数用于判断是否存在日志满足条件。如果存在,则返回true。

语法

bool_or(boolean expression)

参数说明

参数

说明

boolean expression

参数值为布尔表达式。

返回值类型

boolean类型。

示例

判断是否存在请求时间小于20秒的请求。如果存在,则返回true。

  • 查询和分析语句(试用)

    * | SELECT
      bool_or(request_time < 20)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

checksum函数

checksum函数用于计算x的校验和。

语法

checksum(x)

参数说明

参数

说明

x

参数值为任意数据类型。

返回值类型

string类型(BASE 64编码)。

示例

  • 查询和分析语句(试用)

    * | SELECT
      checksum(request_method) AS request_method
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

count函数

count函数用于计数。

语法

  • 统计所有的日志条数。

    count(*)
  • 统计所有的日志条数。等同于count(*)

    count(1)
  • 统计x中值不为NULL的日志条数。

    count(x)

参数说明

参数

说明

x

参数值为任意数据类型。

返回值类型

integer类型。

示例

  • 示例1:统计网站访问量。

    • 查询和分析语句(试用)

      * | SELECT
        count(*) AS PV
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

  • 示例2:统计包含request_method字段且字段值不为NULL的日志条数。

    • 查询和分析语句(试用)

      * | SELECT
        count(request_method) AS count
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

count_if函数

count_if函数用于统计满足指定条件的日志条数。

语法

count_if(boolean expression)

参数说明

参数

说明

boolean expression

参数值为布尔表达式。

返回值类型

integer类型。

示例

统计request_uri字段的值是以file-0结尾的日志条数。

  • 查询和分析语句(试用)

    * | SELECT
      count_if(request_uri like '%file-0') AS count
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

geometric_mean函数

geometric_mean函数用于计算x的几何平均数。

语法

geometric_mean(x)

参数说明

参数

说明

x

参数值为double、bigint或real类型。

返回值类型

double类型。

示例

统计请求时长的几何平均值。

  • 查询和分析语句(试用)

    * | SELECT
      geometric_mean(request_time) AS time
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

every函数

every函数用于判断是否所有日志都满足条件。如果是,则返回true。every函数等同于bool_and函数。

语法

every(boolean expression)

参数说明

参数

说明

boolean expression

参数值为布尔表达式。

返回值类型

boolean类型。

示例

判断所有请求的时间是否都小于100秒。如果是,则返回true。

  • 查询和分析语句(试用)

    * | SELECT
      every(request_time < 100)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

kurtosis函数

kurtosis函数用于计算x的峰度。

语法

kurtosis(x)

参数说明

参数

说明

x

参数值为double、bigint类型。

返回值类型

double类型。

示例

计算请求时间的峰度。

  • 查询和分析语句(试用)

    *| SELECT
      kurtosis(request_time)
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

map_union函数

map_union函数用于返回一列Map数据的并集。 如果Map中存在相同的键,则返回的键值为其中任意一个键的值。

语法

map_union(x)

参数说明

参数

说明

x

参数值为map类型。

返回值类型

map类型。

示例

etl_context字段的值(map类型)聚合后,随机返回其中一个值(map类型)。

  • 字段样例

    etl_context: {
     project:"datalab-148****6461-cn-chengdu"
     logstore:"internal-etl-log"
     consumer_group:"etl-83****4d1965"
     consumer:"etl-b2d40ed****c8d6-291294"
     shard_id:"0" }
  • 查询和分析语句

    * | SELECT
      map_union(
        try_cast(json_parse(etl_context) AS map(varchar, varchar))
      )
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

max函数

max函数用于查询x中最大的值。

语法

  • 查询x中最大的值。

    max(x)
  • 查询x中最大的n个值,返回结果为数组。

    max(x, n)

参数说明

参数

说明

x

参数值为任意数据类型。

n

参数值为正整数。

返回值类型

与参数值的数据类型一致。

示例

  • 示例1:查询请求时长的最大值。

    • 查询和分析语句(试用)

      * | SELECT
        max(request_time) AS max_request_time
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

  • 示例2:查询请求时长的top 10。

    • 查询和分析语句(试用)

      * | SELECT
        max(request_time, 10) AS "top 10"
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

max_by函数

max_by函数支持如下两种用法。

语法

  • 查询y为最大值时对应的x值。

    max_by(x, y)
  • 查询最大的ny值对应的x值,返回结果为数组。

    max_by(x, y, n)

参数说明

参数

说明

x

参数值为任意数据类型。

y

参数值为任意数据类型。

n

大于0的整数。

返回值类型

与参数值的数据类型一致。

示例

  • 示例1:统计最高消费订单对应的时间点。

    • 查询和分析语句

      * | SELECT
        max_by(UsageEndTime, PretaxAmount) AS time
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

  • 示例2:统计请求时长最大的3个请求对应的请求方法。

    • 查询和分析语句(试用)

      * | SELECT
        max_by(request_method, request_time, 3) AS method
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

min函数

min函数用于查询x中最小值。

语法

  • 查询x中最小值。

    min(x)
  • 查询x中最小的n个值,返回结果为数组。

    min(x,n)

参数说明

参数

说明

x

参数值为任意数据类型。

n

参数值为正整数。

返回值类型

与参数值的数据类型一致。

示例

  • 示例1:查询请求时长的最小值。

    • 查询与分析语句(试用)

      * | SELECT
        min(request_time) AS min_request_time
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

  • 示例2:查询请求时长最小的10个值。

    • 查询和分析语句(试用)

      * | SELECT
        min(request_time, 10)
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

min_by函数

min_by函数支持如下两种用法。

语法

  • 查询y为最小值时对应的x值。

    min_by(x, y)
  • 查询最小的ny值对应的x值。返回结果为数组。

    min_by(x, y, n)

参数说明

参数

说明

x

参数值为任意数据类型。

y

参数值为任意数据类型。

n

大于0的整数。

返回值类型

与参数值的数据类型一致。

示例

  • 示例1:返回最小请求时长的请求对应的请求方法。

    • 查询和分析语句(试用)

      * | SELECT
        min_by(request_method, request_time) AS method
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

  • 示例2:返回请求时长最小的3个请求对应的请求方法。

    • 查询和分析语句(试用)

      * | SELECT
        min_by(request_method, request_time, 3) AS method
    • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

skewness函数

skewness函数用于计算x的偏度。

语法

skewness(x)

参数说明

参数

说明

x

参数值为double、bigint类型。

返回值类型

double类型。

示例

计算请求时间的偏度。

  • 查询和分析语句(试用)

    *| SELECT
      skewness(request_time) AS skewness
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

sum函数

sum函数用于计算x的总值。

语法

sum(x)

参数说明

参数

说明

x

参数值为double、bigint、decimal或real类型。

返回值类型

与参数值的数据类型一致。

示例

计算网站每天的访问流量。

  • 查询和分析语句(试用)

    * | SELECT
      date_trunc('day', __time__) AS time,
      sum(body_bytes_sent) AS body_bytes_sent
    GROUP BY
      time
    ORDER BY
      time
  • 查询和分析结果阿里云日志服务SLS聚合函数-云淘科技

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/164118.html

(0)
上一篇 2023年12月10日
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云云原生大数据计算服务 MaxComputeREVERSE-云淘科技

    返回倒序字符串或数组。 命令格式 string|array reverse(string|array ) 参数说明 value:必填。STRING或ARRAY类型。如果输入为BIGINT、DOUBLE、DECIMAL或DATETIME等类型,则会隐式转换为STRING类型后参与运算。 返回值说明 返回STRING或ARRAY类型。返回规则如下: value为…

  • 阿里云负载均衡SetServerCertificateName – 设置服务器证书名称-云淘科技

    设置服务器证书名称。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。 调试调试授权信息下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下: 操作:是指具体的…

    阿里云负载均衡 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云RDS数据库AllocateReadWriteSplittingConnection – 申请只读地址-云淘科技

    该接口用于申请只读地址。 接口说明 适用引擎 RDS MySQL RDS SQL Server 功能描述 对拥有只读实例的SQL Server主实例,可以创建统一只读地址。创建该地址后,不影响原主实例、只读实例的已有访问地址,以及正常的内外网申请。 前体条件 调用该接口时,实例必须满足以下条件,否则将操作失败: MySQL实例使用的是共享代理。 实例状态为运…

    阿里云数据库 2023年12月9日
  • 阿里云RDS数据库ActivateMigrationTargetInstance – RDS PostgreSQL上云切换-云淘科技

    该接口用于执行RDS PostgreSQL上云切换,将RDS PostgreSQL提升为主库,正式提供服务。 接口说明 适用引擎 RDS PostgreSQL 相关功能文档 注意 使用该接口前,请仔细阅读功能文档,确保完全了解使用接口的前提条件及使用后造成的影响后,再进行操作。 一键上云 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您…

    阿里云数据库 2023年12月9日
  • 阿里云日志服务SLS统计图表(Pro版本)概述-云淘科技

    日志服务支持通过统计图表的方式对查询分析结果进行可视化展示。统计图表(Pro版本)支持展示多个查询分析结果,并支持对不同查询分析的结果进行个性化的可视化设置。 注意事项 已配置索引并开启分析功能,即在查询分析面板中打开对应字段的开启统计开关。具体操作,请参见配置索引。 执行查询分析语句(查询语句|分析语句)后,日志服务才会以统计图表方式展示查询分析结果。 图…

    阿里云日志服务SLS 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。