testbook

数学函数

round, floor, ceil, rand, exp, ln, log10, log2, log, pow, power, sqrt, bin, hex, unhex,conv, num, intto_base, intfrom_base, abs, pmond, sin, asin, cos, acos, positive, negative, sigh, pi, degrees, radians, tan, atan, e
函数名返回类型描述
round(double a[, int d]) BigInt 四舍五入。
说明:
       未指定d时,四舍五入到小数点后一位;若指定了d,则四舍五入到小数点后第d位。

举例:
select round(1.4523,3) from src limit 1;
Result: 1.452


函数名返回类型描述
floor(double a) BigInt 不大于a的最大整数
说明:
       返回不大于a的最大整数。

举例:
select floor(1.314) from src limit 1;
Result: 1


函数名返回类型描述
ceil(double a) BigInt 不小于a的最小整数
说明:
       返回不小于a的最小整数。

举例:
select ceil(2.01) from src limit 1;
Result: 3


函数名返回类型描述
ceiling(double a) BigInt 不小于a的最小整数
说明:
       用法和 'ceil' 一致。

举例:
select ceiling(2.01) from src limit 1;
Result: 3


函数名返回类型描述
rand([int seed]) Double 生成0-1的随机数
说明:
       未指定seed时随机返回0-1的随机数;指定seed时;相同的seed得到的随机数结果是一样的,例如每次rand(100)的值都是一样的。

举例:
select rand(100) from src limit 1;
Result: 0.7220096548596434


函数名返回类型描述
exp(double n) Double 返回e的n次方
说明:
       返回e的n次方。

举例:
select exp(1) from src limit 1;
Result: 2.7182818284590455


函数名返回类型描述
ln(double a) Double 自然对数
说明:
       返回指定值的自然对数。

举例:
select ln(exp(1.314)) from src;
Result: 1.314


函数名返回类型描述
log10(double a) Double 10为底的对数
说明:
       返回指定值以10为底的对数。

举例:
select log10(100) from src limit 1;
Result: 2.0


函数名返回类型描述
log2(double a) Double 2为底的对数
说明:
       返回指定值以2为底的对数。

举例:
select log2(4) from src limit 1;
Result: 2.0


函数名返回类型描述
log(double base, double a) Double 返回指定底数的对数
说明:
       返回a以base为底的对数。

举例:
select log(10,100) from src limit 1;
Result: 2.0


函数名返回类型描述
pow(double a, double p) Double a的p次幂
说明:
       返回a的p次幂。

举例:
select pow(10,2) from src limit 1;
Result: 100.0


函数名返回类型描述
power(double a, double p) Double a的p次幂
说明:
       返回a的p次幂。

举例:
select power(10,2) from src limit 1;
Result: 100.0


函数名返回类型描述
sqrt(double a) BigInt 平方根
说明:
       返回a的平方根。

举例:
select sqrt1(100) from src;
Result: 10.0


函数名返回类型描述
bin(BIGINT a) String 返回二进制格式
说明:
       返回二进制格式。

举例:
select bin(10) from src limit 1;
Result: 1010


函数名返回类型描述
hex(BIGINT a) / hex(String a) String 返回十六进制格式
说明:
       返回十六进制格式。

举例:
select hex(16) from src limit 1 ;
Result: 10
select hex('16') from src limit 1 ;
Result: 3136


函数名返回类型描述
unhex(String a) String 返回十六进制格式
说明:
       十六进制转二进制格式,只接受字符格式,即使输入numeric也转化为字符格式再转化为二进制。

举例:
select unhex(3136) from src limit 1 ;
Result: 16


函数名返回类型描述
conv(BIGINT num, intfrom_base, intto_base) String 度量体系转化。
说明:
       将指定数值,由原来的度量体系转换为指定的度量体系。

举例:
SELECT conv(100, 2, 10) FROM src LIMIT 1;
Result: 4


函数名返回类型描述
abs(double a) Double 绝对值
说明:
       返回a的绝对值。

举例:
select abs(-1314) from src limit 1;
Result: 1314


函数名返回类型描述
pmod(int a, int b) Numeric 余数的绝对值
说明:
       返回|a%b|。

举例:
select pmod(-4,3) from src limit 1;
Result: 2


函数名返回类型描述
sin(double a) Double 正弦
说明:
       返回a的正弦值,其中a是弧度制。

举例:
select sin(pi()/2) from src;
Result: 1.0


函数名返回类型描述
asin(double a) Double 反正弦
说明:
       返回a的反正弦值,a必须大于-1小于1,否则返回null。

举例:
select asin(1) from src;
Result: 1.5707963267948966


函数名返回类型描述
cos(double a) Double 余弦
说明:
       返回a的余弦值,其中a是弧度制。

举例:
select cos(pi()) from src;
Result: -1.0


函数名返回类型描述
acos(double a) Double 反余弦
说明:
       返回a的反余弦值,其中a是弧度制。

举例:
select acos(1) from src;
Result: 0.0


函数名返回类型描述
tan(double a) Double 正切
说明:
       返回a的正切值,其中a是弧度制。

举例:
select tan(pi()/4) from src;
Result: 0.9999999999999999


函数名返回类型描述
atan(double a) Double 余切
说明:
       返回a的余切值,其中a是弧度制。

举例:
select atan(1) from src;
Result: 0.7853981633974483


函数名返回类型描述
positive(int a) Numeric 直接返回a
说明:
      

举例:
select positive(-1) from src;
Result: -1


函数名返回类型描述
negative(int a) Numeric 返回-a
说明:
      

举例:
select negative(1) from src;
Result: -1


函数名返回类型描述
sign(x) Double 判断正负
说明:
       x为正则返回1.0,为负则返回-1.0,为0则返回0.

举例:
SELECT sign(-10) FROM src LIMIT 1;
Result: -1.0


函数名返回类型描述
pi() Double 返回pi的值
说明:
      

举例:
select pi() from src;
Result: 3.141592653589793


函数名返回类型描述
degrees(double rad) Double 弧度转角度
说明:
       把弧度制的rad转化为角度。

举例:
select degrees(pi()) from src;
Result: 180.0


函数名返回类型描述
radians(double ang) Double 角度转弧度
说明:
       把角度制的ang转化为弧度。

举例:
select radians(180) from src;
Result: 3.141592653589793


函数名返回类型描述
e() Double 返回e
说明:
       返回自然常数e

举例:
select e() from src;
Result: 2.718281828459045