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
ceil(dp ) 对DP类型的表达式向上取整。 ceil(-42.8) -42
ceil(numeric) 对NUMERIC类型的表达式向上取整。 ceil(-42.8) -42
ceiling(dp ) 对DP类型的表达式向上取整。 ceil(-42.8) -42
ceiling(numeric) 对NUMERIC类型的表达式向上取整。 ceil(-42.8) -42
degrees(dp) 将DP类型表达式的弧度转换为角度。 degrees(0.5) 28.6478897565412
exp(dp) 返回DP类型表达式的指数。 exp(1.0) 2.71828182845905
exp(numeric) 返回NUMERIC类型表达式的指数。 exp(1.0) 2.71828182845905
floor(dp ) 对DP类型表达式向下取整。 floor(-42.8) -43
floor(numeric) 对NUMERIC类型表达式向下取整。 floor(-42.8) -43
ln(dp) 返回DP类型表达式的自然对数。 ln(2.0) 0.693147180559945
ln(numeric) 返回NUMERIC类型表达式的自然对数。 ln(2.0) 0.693147180559945
log(dp) 返回DP类型表达式的常用对数。 log(100.0) 2
log(numeric) 返回NUMERIC类型表达式的常用对数。 log(100.0) 2
log(b numeric, x numeric) 返回NUMERIC类型表达式的对数。 log(2.0, 64.0) 6.0000000000
mod(bigint, x) 求BIGINT类型表达式除以x的余数。 mod(9,4) 1
mod(int, x) 求INT类型表达式除以x的余数。 mod(9,4) 1
pi() 返回π常量。 pi() 3.14159265358979
power(a dp, b dp) 求a的b次幂,a和b使用DP类型的表达式。 power(9.0, 3.0) 729
power(a numeric, b numeric) 求a的b次幂,a和b使用NUMERIC类型的表达式。 power(9.0, 3.0) 729
radians(dp) 将DP类型表达式的角度转换为弧度。 radians(45.0) 0.785398163397448
round(dp ) 返回DP类型表达式四舍五入后的整数值。 round(42.4) 42
round(numeric) 返回NUMERIC类型表达式四舍五入后的整数值。 round(42.4) 42
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.4142135623731
sqrt(numeric) 返回NUMERIC类型表达式的平方根。 sqrt(2.0) 1.4142135623731
trunc(dp) 去掉DP类型表达式的小数位。 trunc(42.8) 42
trunc(numeric) 去掉NUMERIC类型表达式的小数位。 trunc(42.8) 42
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.476738295983523