数值函数
1.基本函数
函数 |
小写 |
用法 |
ABS(x) |
absolute value |
返回x的绝对值 |
SIGN(x) |
sign |
返回x的符号。正数返回1,负数返回-1,0返回0 |
PI() |
π |
返回圆周率的值,默认返回3.141593 |
CEIL(x),CEILING(x) |
ceiling 天花板 |
返回x向上取整的值 |
FLOOR(x) |
floor 地板 |
返回x向下取整的值 |
LEAST(e1,e2,e3...) |
least 最小 |
返回列表中的最小值 |
GREATEST(e1,e2,e3...) |
greatest 最大 |
返回列表中的最大值 |
MOD(x,y) |
modular arithmetic 求余 |
返回x除以y后的余数 |
RAND() |
random |
返回0~1的随机数 |
RAND(x) |
|
返回0~1的随机数,x用作种子值,相同的x值会产生相同的随机数 |
ROUND(x) |
round |
返回对x进行四舍五入的结果 |
ROUND(x,y) |
|
返回对x进行四舍五入,保留y位小数的结果 |
TRUNCATE(x,y) |
truncate |
返回对x截取为y位小数的结果 |
SQRT(x) |
square root calculations 非负实数平方根 |
返回x的平方根,x为负数时,返回null |
举例1:对数字操作
| SELECT |
| ABS(-567),ABS(13), |
| SIGN(-31),SIGN(56), |
| PI(), |
| CEIL(13.44),CEILING(-31.55), |
| FLOOR(56.77),FLOOR(-13.22), |
| MOD(13,4) |
| FROM DUAL; |

举例2:随机数
| SELECT |
| RAND(),RAND(), |
| RAND(10),RAND(10), |
| RAND(-1),RAND(-1) |
| FROM DUAL; |

举例3:四舍五入
| SELECT |
| ROUND(13.44),ROUND(13.233,2),ROUND(13.234,-1), |
| ROUND(13.56),ROUND(13.556,2),ROUND(13.567,-1), |
| TRUNCATE(12.66,1),TRUNCATE(12.66,-1) |
| FROM DUAL; |

2.角度与弧度互换函数
图二中OC半径和CD两条线相等时夹角为1弧度。
圆的周长C = 2πr,
则C/r = 2π,即一个圆360°等于2π弧度。
1弧度 = 360°/2π = 180°/π

函数 |
小写 |
用法 |
RADIANS(x) |
radians |
将角度x转化为弧度 |
DEGREES(x) |
degrees |
将弧度x转化为角度 |
举例1:
| SELECT |
| RADIANS(30),RADIANS(60),RADIANS(90), |
| DEGREES(2*PI()),DEGREES(RADIANS(90)) |
| FROM DUAL; |

3.三角函数
tan(x)
和tan2(m,n)
计算两个点时,P1(x1,y1),P2(x2,y2)
tan((y2-y1)/(x2-x1))
tan2(y2-y1,x2-x1)
当x2-x1 = 0
时,tan(x)
函数会报错,而tan2(m,n)
则不会
y = sinx
表示由x求y
由y求x则用x = asiny
表示
sin(x)中x为弧度,asin(x)中x取值在(-1,1)范围内,超出返回null
函数 |
小写 |
用法 |
SIN(x) |
sin |
返回x的正弦值 |
ASIN(x) |
asin |
返回x的反正弦值,如果x的值不在-1到1之间,则返回null |
COS(x) |
cos |
返回x的余弦值 |
ACOS(x) |
acos |
返回x的反余弦值,如果x的值不在-1到1之间,则返回null |
TAN(x) |
tan |
返回x的正切值 |
ATAN(x) |
atan |
返回x的反正切值 |
ATAN2(m,n) |
atan2 |
返回两个参数的反正切值 |
COT(x) |
cot |
返回x的余切值 |
| SELECT |
| SIN(PI()/2),ASIN(1), |
| SIN(RADIANS(30)),DEGREES(ASIN(1)), |
| TAN(RADIANS(45)),DEGREES(ATAN(1)),DEGREES(ATAN2(1,1)) |
| FROM DUAL; |

4.指数与对数
函数 |
小写 |
用法 |
POW(x,y),POWER(x,y) |
power |
返回x的y次方 |
EXP(x) |
exponential 指数曲线 |
返回e的x次方,e为常数 |
LN(x),LOG(x) |
logarithmic function 对数函数 |
返回以e为底时x的对数,x<=0时,返回null |
LOG10(x) |
|
返回以10为底时x的对数,x<=0时,返回null |
LOG2(x) |
|
返回以2为底时x的对数,x<0时,返回null |
| SELECT |
| POW(2,3),POWER(2,4), |
| EXP(2), |
| LN(10),LN(EXP(1)), |
| LOG10(10),LOG2(4) |
| FROM DUAL; |

5.进制间的转换
函数 |
小写 |
用法 |
BIN(x) |
binary 二进制 |
返回x的二进制编码 |
OCT(x) |
octal 八进制 |
返回x的八进制编码 |
HEX(x) |
hexadecimal 十六进制 |
返回x的十六进制编码 |
CONV(x,f1,f2) |
conversion 转换 |
返回f1进制数变成f2进制数 |
| SELECT |
| BIN(10), |
| HEX(10), |
| OCT(10), |
| CONV(101,2,10) |
| FROM DUAL; |

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本