基本函数
函数 |
用法 |
ABS(x) |
返回x的绝对值 |
SIGN(X) |
返回X的符号。正数返回1,负数返回-1,0返回0 |
PI() |
返回圆周率的值 |
CEIL(x),CEILING(x) |
返回大于或等于某个值的最小整数 |
FLOOR(x) |
返回小于或等于某个值的最大整数 |
LEAST(e1,e2,e3…) |
返回列表中的最小值 |
GREATEST(e1,e2,e3…) |
返回列表中的最大值 |
MOD(x,y) |
返回X除以Y后的余数 |
RAND() |
返回0~1的随机值 |
RAND(x) |
返回0~1的随机值,其中x的值用作种子值,相同的X值会产生相同的随机数 |
ROUND(x) |
返回一个对x的值进行四舍五入后,最接近于X的整数 |
ROUND(x,y) |
返回一个对x的值进行四舍五入后最接近X的值,并保留到小数点后面Y位 |
TRUNCATE(x,y) |
返回数字x截断为y位小数的结果 |
SQRT(x) |
返回x的平方根。当X的值为负数时,返回NULL |
举例:
SELECT
ABS(-123),ABS(32),SIGN(-23),SIGN(43),PI(),CEIL(32.32),CEILING(-43.23),FLOOR(32.32),
FLOOR(-43.23),MOD(12,5)
FROM DUAL;
SELECT RAND(),RAND(),RAND(10),RAND(10),RAND(-1),RAND(-1)
FROM DUAL;
SELECT
ROUND(12.33),ROUND(12.343,2),ROUND(12.324,-1),TRUNCATE(12.66,1),TRUNCATE(12.66,-1)
FROM DUAL;
角度与弧度互换函数
在一个圆中,弧长等于半径的弧,其所对的圆心角就是 1rad。也就是说,两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧的长度正好等于圆的半径时,两条射线的夹角的弧度为 1。

1弧度
函数 |
用法 |
RADIANS(x) |
将角度转化为弧度,其中,参数x为角度值 |
DEGREES(x) |
将弧度转化为角度,其中,参数x为弧度值 |
SELECT RADIANS(30),RADIANS(60),RADIANS(90),DEGREES(2*PI()),DEGREES(RADIANS(90))
FROM DUAL;
三角函数
函数 |
用法 |
SIN(x) |
返回x的正弦值,其中,参数x为弧度值 |
ASIN(x) |
返回x的反正弦值,即获取正弦为x的值。如果x的值不在-1到1之间,则返回NULL |
COS(x) |
返回x的余弦值,其中,参数x为弧度值 |
ACOS(x) |
返回x的反余弦值,即获取余弦为x的值。如果x的值不在-1到1之间,则返回NULL |
TAN(x) |
返回x的正切值,其中,参数x为弧度值 |
ATAN(x) |
返回x的反正切值,即返回正切值为x的值 |
ATAN2(m,n) |
返回两个参数的反正切值 |
COT(x) |
返回x的余切值,其中,X为弧度值 |
举例:
ATAN2(M,N)函数返回两个参数的反正切值。 与ATAN(X)函数相比,ATAN2(M,N)需要两个参数,例如有两个
点point(x1,y1)和point(x2,y2),使用ATAN(X)函数计算反正切值为ATAN((y2-y1)/(x2-x1)),使用ATAN2(M,N)计
算反正切值则为ATAN2(y2-y1,x2-x1)。由使用方式可以看出,当x2-x1等于0时,ATAN(X)函数会报错,而
ATAN2(M,N)函数则仍然可以计算。
指数与对数
函数 |
用法 |
POW(x,y),POWER(X,Y) |
返回x的y次方 |
EXP(X) |
返回e的X次方,其中e是一个常数,2.718281828459045 |
LN(X),LOG(X) |
返回以e为底的X的对数,当X <= 0 时,返回的结果为NULL |
LOG10(X) |
返回以10为底的X的对数,当X <= 0 时,返回的结果为NULL |
LOG2(X) |
返回以2为底的X的对数,当X <= 0 时,返回NULL |
进制间的转换
函数 |
用法 |
BIN(x) |
返回x的二进制编码 |
HEX(x) |
返回x的十六进制编码 |
OCT(x) |
返回x的八进制编码 |
CONV(x,f1,f2) |
返回f1进制数变成f2进制数 |