ABS(Exp1) 表示的是返回 Exp1 的绝对值。
#取绝对值
SELECT ABS(-1),ABS(1),ABS(2.34),ABS(-3.421),ABS(0)
FROM DUAL;
SIGN(Exp1) 表示的是返回 Exp1 的符号,正数返回1,负数返回-1,0返回0。
#取符号
SELECT SIGN(1),SIGN(-2),SIGN(4.365),SIGN(-6.425),SIGN(0)
FROM DUAL;
PI() 表示的是返回圆周率的值。
#返回圆周率
SELECT PI()
FROM DUAL;
CEIL(Exp1) 表示返回大于或等于某个值的最小整数。
#返回大于或等于某个值的最小整数
SELECT CEIL(3.42),CEIL(2),CEIL(0.11),CEIL(0),CEIL(-0.45),CEIL(-4.53),CEIL(-4)
FROM DUAL;
CEILING(Exp1) 表示返回大于或等于某个值的最小整数。
#返回大于或等于某个值的最小整数
SELECT CEILING(3.42),CEILING(2),CEILING(0.11),CEILING(0),CEILING(-0.45),CEILING(-4.53),CEILING(-4)
FROM DUAL;
FLOOR(Exp1) 表示返回小于或等于某个值的最小整数。
#返回小于或等于某个值的最小整数
SELECT FLOOR(3.42),FLOOR(2),FLOOR(0.11),FLOOR(0),FLOOR(-0.45),FLOOR(-4.53),FLOOR(-4)
FROM DUAL;
LEAST(Exp1,Exp2,Exp3…) 表示的是返回列表中的最小值。
#返回列表中的最小值
SELECT LEAST(1,2,3,4),LEAST(1.2,3.2,0.9),LEAST(3,-0.54,1.32)
FROM DUAL;
GREATEST(Exp1,Exp2,Exp3…) 表示的是返回列表中的最大值。
#返回列表中的最大值
SELECT GREATEST(1,2,3,4),GREATEST(1.2,3.2,0.9),GREATEST(3,-0.54,1.32)
FROM DUAL;
MOD(Exp1,Exp2) 表示的是返回 Exp1 除以 Exp2 后的余数。
#返回相除后的余数
SELECT MOD(3,4),MOD(2,1),MOD(4,1.3),MOD(6,-2),MOD(-2,6),MOD(-4,-3),MOD(0,-1),MOD(1,0)
FROM DUAL;
取余规则:
RAND()表示的是返回0~1的随机值。
#返回随机值
SELECT RAND(),RAND(),RAND()
FROM DUAL;
RAND(Exp1)表示的是返回0~1的随机值,但Exp1表示种子值,相同的种子值会返回相同的随机值。
#返回随机值
SELECT RAND(1),RAND(1),RAND(2),RAND(3)
FROM DUAL;
ROUND(Exp1)表示的是返回一个对 Exp1 值进行四舍五入后,最接近于 Exp1 的整数。
#保留小数
SELECT ROUND(3.14159),ROUND(342.645)
FROM DUAL;
ROUND(Exp1,Exp2) 表示的是返回一个对 Exp1 值进行四舍五入后最接近 Exp1 的值,并保留到小数点后面 Exp2 位。
#保留小数
SELECT ROUND(3.14159,0),ROUND(342.645,1),ROUND(435.648,2),ROUND(354,-1),ROUND(354,-2),ROUND(354,-3)
FROM DUAL;
TRUNCATE(Exp1,Exp2) 表示的是返回一个对 Exp1 值截留 Exp2 位并不进行四舍五入的值。
#保留小数
SELECT TRUNCATE(3.14159,0),TRUNCATE(342.645,1),TRUNCATE(435.648,2),TRUNCATE(354,-1),TRUNCATE(354,-2),TRUNCATE(354,-3)
FROM DUAL;
SQRT(Exp1) 表示的是返回 Exp1 的平方根,当 Exp1 的值为负数时,返回NULL。
#对数进行开方
SELECT SQRT(3),SQRT(3.5),SQRT(4),SQRT(0),SQRT(-3),SQRT(-4.3)
FROM DUAL;
pow(Exp1,Exp2) 表示的是计算Exp1的Exp2次方的值。
#对数进行平方
SELECT POW(3,2),POW(-3,3),POW(-3,2),POW(4.1,1.7)
FROM DUAL;