本文介绍数学计算函数的语法和示例。

基本语法

说明
  • 数学计算函数支持运算符+-*/%
  • 如下函数中的xy可以为数字、日志字段或计算结果为数字的表达式。
函数名称 说明
abs(x) 计算数字的绝对值。
cbrt(x) 计算数字的立方根。
sqrt(x) 计算数字的平方根。
cosine_similarity(x,y) 计算x和y之间的余弦相似度。
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) 向下取整数。

例如执行* | SELECT floor(2.5)语句,返回结果为2.0。

ceiling(x) 向上取整数。

例如执行* | SELECT ceiling(2.5)语句,返回结果为3.0。

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) 判断目标值是否为非数值。

示例

同比今天与昨天的访问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 website_log))
  • 查询和分析结果round