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
本文介绍数学计算函数的语法及示例。
日志服务(Cloud Log Service,CLS)日志分析功能支持对于以 int、long、double 为类型的字段通过数学统计函数和数学计算函数进行日志分析。
说明:
数学计算函数支持运算符+—*/%。
以下函数中的 x、y 可以为数字、日志字段或计算结果为数字的表达式。

基本语法

函数名称
说明
abs(x)
计算数字的绝对值。
cbrt(x)
计算数字的立方根。
sqrt(x)
计算数字的平方根。
cosine_similarity(x,y)
计算向量 x 和 y 之间的余弦相似度。
例如 * | SELECT cosine_similarity(MAP(ARRAY['x','y'], ARRAY[1.0,0.0]), MAP(ARRAY['x','y'], ARRAY[0.0,1.0])) 返回0。
degrees(x)
将弧度转换为度。
radians(x)
将度转换为弧度。
e()
计算数字的自然对数。
exp(x)
返回自然对数的指数。
ln(x)
计算数字的自然对数。
log2(x)
计算以2为底的对数。
log10(x)
计算以10为底的对数。
log(x,b)
计算以 b 为底的对数。
pi()
返回包含14个小数位的π值。
pow(x,b)
计算数字的 b 次幂。
rand()
返回随机数。
random(0,n)
返回[0,n)之间的随机数。
round(x)
返回四舍五入后的取值。
round(x, N)
保留数字的 N 位小数。
floor(x)
向下取整数。
ceiling(x)
向上取整数。
from_base(varchar, bigint)
根据 BASE 编码将字符串转为数字。
to_base(x, radix)
根据 BASE 编码将数字转为字符串。
truncate(x)
截断数字的小数部分。
acos(x)
计算数字的反余弦。
asin(x)
计算数字的反正弦。
atan(x)
计算数字的反正切。
atan2(y,x)
计算两个数字相除的结果的反正切。
cos(x)
计算数字的余弦。
sin(x)
计算数字的正弦。
cosh(x)
计算数字的双曲余弦。
tan(x)
计算数字的正切。
tanh(x)
计算数字的双曲正切。
infinity()
返回正无穷的数值。
is_nan(x)
判断目标值是否为 NaN(Not a Number)。
nan()
返回一个 NaN 值(Not a Number)。
mod(x, y)
用于计算 x 与 y 相除的余数。
sign(x)
返回 x 的符号,通过1、0、-1表示。
width_bucket(x, bound1, bound2, n)
将一段数值(bound1 - bound2)划分成大小相同的 n 个 Bucket,返回 x 所属的 Bucket。
例如* | select timeCost,width_bucket(timeCost,10,1000,5)
width_bucket(x, bins)
使用数组(bins)指定 Bucket 的范围,返回 x 所属的 Bucket。
例如* | select timeCost,width_bucket(timeCost,array[10,100,1000])

示例

同比今天和昨天的访问 PV,并使用百分数表示。查询和分析语句如下:
* | SELECT diff [1] AS today, round((diff [3] -1.0) * 100, 2) AS growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(*) as pv FROM log))


帮助和支持

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

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

文档反馈