目前只读分析引擎支持大部分 MySQL 的数学运算函数,但在部分场景下仍然存在限制和不兼容。本文介绍在只读分析引擎中数学运算函数的支持列表,并针对输入参数中的类型限制进行了列举。如存在文档中未提到的入参与函数则均不支持。
数学运算函数支持类型
round 函数
四舍五入函数。
语法:
round(x)x 支持值类型:支持 decimal 数据类型。
abs 函数
求绝对值函数。
语法:
abs(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
floor 函数
向下取整函数。
语法:
floor(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
ceil 函数
向上取整函数。
语法:
ceil(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
ceiling 函数
向上舍入函数。
语法:
ceiling(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
sqrt 函数
平方根函数。
语法:
sqrt(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
log 函数
对数函数。
语法:
log(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
log2函数
以2为底的对数函数。
语法:
log2(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
log10函数
以10为底的对数函数。
语法:
log10(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
ln 函数
返回数字的自然对数的函数。
语法:
ln(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
exp 函数
返回 e 的 x 次幂的函数。
语法:
exp(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
pow 函数
计算 x 的 y 次方函数。
语法:
pow(x, y)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
y 支持值类型:支持 int,bigint,double,decimal 数据类型。
sign 函数
用以判断实数的正负号。
语法:
sign(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
radians 函数
将度数转换为弧度。
语法:
radians(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
degrees 函数
弧度转换为度。
语法:
degrees(x)x 支持值类型:支持 int,bigint,double,decimal 数据类型。
conv 函数
将一个数字从一个数字基系统转换为另一个,并将结果作为字符串值返回。
语法:
conv(n, from_base, to_base)n 支持值类型:支持 int,bigint,double,decimal 数据类型。
from_base 支持值类型:支持 int,bigint,double,decimal 数据类型。
to_base 支持值类型:支持 int 数据类型。
crc32函数
循环冗余校验函数。
语法:
crc32(expr)expr 支持值类型:支持 int,bigint,double,decimal 数据类型。
greatest 函数
返回 N 个值中的最大值。
语法:
greatest(value1, value2, ...)value1支持值类型:支持 int,bigint,double,decimal 数据类型。
value2支持值类型:支持 int,bigint,double,decimal 数据类型。
least 函数
返回 N 个值中的最小值。
语法:
least(value1, value2, ...)value1支持值类型:支持 int,bigint,double,decimal 数据类型。
value2支持值类型:支持 int,bigint,double,decimal 数据类型。
truncate 函数
根据小数位数截取数字。
语法:
truncate(X, D)根据 D 的数值,截取 X 的小数位数,直接截断,不会四舍五入。
当 D 大于0时,是对数值 X 的小数位数进行操作。
当 D 等于0时,是将数值 X 的小数部分去除,只保留整数部分。
当 D 小于0时,是将数值 X 的小数部分去除,并将整数部分按照 D 指定位数,用0替换。