tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

通用聚合函数

PDF
聚焦模式
字号
最后更新时间: 2026-01-07 15:39:43
本文介绍通用聚合函数的基本语法和示例。
聚合函数是对一组值执行计算并返回计算结果的函数,日志服务支持如下聚合函数:
说明
日志服务分析语句中,表示字符串的字符必须使用单引号('')包裹,无符号包裹或被双引号("")包裹的字符表示字段名或列名。例如:'status' 表示字符串 status,status"status" 表示日志字段 status。
函数语句
说明
示例

arbitrary
(KEY)
随机返回目标列中一个非 NULL 的值。
* | SELECT arbitrary(request_method) AS request_method

avg
(KEY)
计算目标列的算数平均值。
* | SELECT AVG(request_time)

bitwise_and_agg
(KEY)
返回目标列汇所有值按位与运算(AND)的结果。
* | SELECT bitwise_and_agg(status)

bitwise_or_agg
(KEY)
返回目标列汇所有值按位或运算(OR)的结果。
* | SELECT bitwise_or_agg(request_length)

checksum
(KEY)
计算目标列的校验和值,返回结果为 BASE 64编码类型。
* | SELECT checksum(request_method) AS request_method

count
(*)
表示所有的行数。
* | SELECT COUNT(*) WHERE http_status >200

count
(1)
COUNT(1) 等同于 COUNT(*),表示所有的行数。
* | SELECT COUNT(1)

count
(KEY)
计算某一 KEY 列非 NULL 的行数。
* | SELECT COUNT(request_time) WHERE request_time >5.0

count_if
(boolean)
统计满足指定条件的日志条数。
* | select count_if(returnCode>=400) as errorCounts

geometric_mean
(KEY)
计算 KEY 的几何平均数,KEY 不允许包含负数,否则结果为 NaN。
* | SELECT geometric_mean(request_time) AS request_time

max
(KEY)
查询 KEY 中的最大值。
* | SELECT MAX(request_time) AS max_request_time
max_by
(x,y)
返回 y 为最大值时对应的 x 值。
* | SELECT MAX_BY(request_method, request_time) AS method

max_by
(x,y,n)
返回最大的 n 个 y 值对应的 x 值,返回结果为 JSON 数组。
* | SELECT max_by(request_method, request_time, 3) AS method

min
(KEY)
查询 KEY 中最小值。
* | SELECT MIN(request_time) AS min_request_time

min_by
(x,y)
返回 y 为最小值时对应的 x 值。
* | SELECT min_by(request_method, request_time) AS method

min_by
(x,y,n)
返回最小的 n 个 y 值对应的 x 值。返回结果为 JSON 数组。
* | SELECT min_by(request_method, request_time, 3) AS method

sum
(KEY)
计算 KEY 的总值。
* | SELECT SUM(body_bytes_sent) AS sum_bytes

bool_and
(boolean)
是否所有的日志都满足指定的条件,如果是则返回 TRUE ,否则返回 FALSE。
* | select bool_and(returnCode>=400)

bool_or
(boolean)
是否有任意一条日志满足指定的条件,如果是则返回 TRUE ,否则返回 FALSE。
* | select bool_or(returnCode>=400)

every
(boolean)
等效于 bool_and(boolean)。
* | select every(returnCode>=400)

参数说明

参数
说明
KEY
表示日志字段名称。
x
参数值为任意数据类型。
y
参数值为任意数据类型。
n
大于0的整数。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈