Hologres兼容PostgreSQL,支持使用标准的PostgreSQL语法进行开发。

Hologres已支持的数学函数列表如下。当前Hologres版本支持的函数是PostgreSQL的一个子集,函数的使用方法请参见数学函数
函数名 描述 用例 结果
abs(bigint) 返回BIGINT类型表达式的绝对值。 abs(-17) 17
abs(int) 返回INT类型表达式的绝对值。 abs(-17) 17
abs(float8) 返回FLOAT8类型表达式的绝对值。 abs(-17.4) 17.4
abs(float4) 返回FLOAT4类型表达式的绝对值。 abs(-17.4) 17.4
abs(numeric) 返回NUMERIC类型表达式的绝对值。 abs(-17.4) 17.4
cbrt(dp) 返回DP类型表达式的立方根。 cbrt(27.0) 3.0000000000000004
ceil(dp ) 对DP类型的表达式向上取整。 ceil(-42.8) -42.0
ceil(numeric) 对NUMERIC类型的表达式向上取整。 ceil(-42.8) -42.0
ceiling(dp ) 对DP类型的表达式向上取整。 ceil(-42.8) -42.0
ceiling(numeric) 对NUMERIC类型的表达式向上取整。 ceil(-42.8) -42.0
degrees(dp) 将DP类型表达式的弧度转换为角度。 degrees(0.5) 28.64788975654116
exp(dp) 返回DP类型表达式的指数。 exp(1.0) 2.718281828459045
exp(numeric) 返回NUMERIC类型表达式的指数。 exp(1.0) 2.718281828459045
floor(dp ) 对DP类型表达式向下取整。 floor(-42.8) -43.0
floor(numeric) 对NUMERIC类型表达式向下取整。 floor(-42.8) -43.0
ln(dp) 返回DP类型表达式的自然对数。 ln(2.0) 0.6931471805599453
ln(numeric) 返回NUMERIC类型表达式的自然对数。 ln(2.0) 0.6931471805599453
log(dp) 返回DP类型表达式的常用对数。 log(100.0) 2.0
log(numeric) 返回NUMERIC类型表达式的常用对数。 log(100.0) 2.0
log(b numeric, x numeric) 返回NUMERIC类型表达式的对数。 log(2.0, 64.0) 6.0
mod(bigint, x) 求BIGINT类型表达式除以x的余数。 mod(9,4) 1
mod(int, x) 求INT类型表达式除以x的余数。 mod(9,4) 1
pi() 返回π常量。 pi() 3.141592653589793
power(a dp, b dp) 求a的b次幂,a和b使用DP类型的表达式。 power(9.0, 3.0) 729.0
power(a numeric, b numeric) 求a的b次幂,a和b使用NUMERIC类型的表达式。 power(9.0, 3.0) 729.0
radians(dp) 将DP类型表达式的角度转换为弧度。 radians(45.0) 0.7853981633974483
round(dp ) 返回DP类型表达式四舍五入后的整数值。 round(42.4) 42.0
round(numeric) 返回NUMERIC类型表达式四舍五入后的整数值。 round(42.4) 42.0
round(v numeric, s int) 保留小数位数字到s位。 round(42.4382, 2) 42.44
sign(dp ) 返回DP类型表达式的符号。参数值大于0返回1,小于0返回 -1 ,等于0返回0 sign(-8.4) -1
sign(numeric) 返回NUMERIC类型表达式的符号。参数值大于0返回1,小于0返回 -1 ,等于0返回0 sign(-8.4) -1
sqrt(dp) 返回DP类型表达式的平方根。 sqrt(2.0) 1.414213562373095
sqrt(numeric) 返回NUMERIC类型表达式的平方根。 sqrt(2.0) 1.414213562373095
trunc(dp) 去掉DP类型表达式的小数位。 trunc(42.8) 42.0
trunc(numeric) 去掉NUMERIC类型表达式的小数位。 trunc(42.8) 42.0
trunc(v numeric, s int) 截断NUMERIC类型表达式的小数位置到s位。 trunc(42.4382, 2) 42.43
width_bucket(operand numeric, b1 numeric, ...) 返回OPERAND在BUCKET中的位置。 width_bucket(5.35, 0.024, 10.06, 5) 3
random() 获取一个随机数,返回值范围为[0.0,1.0)。 random() 0.3977345246821642