MySQL常用的单行函数汇总1——数值函数
常用的数值函数汇总:
1 #基本的操作 2 SELECT ABS(-123),ABS(32),SIGN(-23),SIGN(43),PI(),CEIL(32.32),CEILING(-43.23),FLOOR(32.32), 3 FLOOR(-43.23),MOD(12,5),12 MOD 5,12 % 5 4 FROM DUAL;
ABS:绝对值 SIGN:判断正负,正数得1,负数得-1,0得0 PI:获取圆周率
CEIL/CEILING:向上取整 FLOOR:向下取整 MOD(a,b):等价于a%b
1 #取随机数 2 SELECT RAND(),RAND(),RAND(10),RAND(10),RAND(-1),RAND(-1) 3 FROM DUAL;
RAND():表示在0-1之间取一个随机数
RAND(10):为取随机数操作定一个编号,使其变成伪随机(每次操作都与第一次相同,且所有RAND(10)的值都相同)
1 #四舍五入,截断操作 2 SELECT ROUND(123.556),ROUND(123.456,0),ROUND(123.456,1),ROUND(123.456,2), 3 ROUND(123.456,-1),ROUND(153.456,-2) #得到的值分别为120,200 4 FROM DUAL; 5 6 SELECT TRUNCATE(123.456,0),TRUNCATE(123.496,1),TRUNCATE(129.45,-1) 7 FROM DUAL;
ROUND(x):对x进行四舍五入保留整数部分 ROUND(x,a):四舍五入x,保留x位数,x>0时即保留x位小数,x<0时即舍弃掉-x位的整数(从个位开始)
TRUNCATE:与ROUND的区别是不做四舍五入直接把不需要保留的位数直接舍弃,其余规则与ROUND相同
1 #单行函数可以嵌套 2 SELECT TRUNCATE(ROUND(123.456,2),0) 3 FROM DUAL;
1 #角度与弧度的互换 2 3 SELECT RADIANS(30),RADIANS(45),RADIANS(60),RADIANS(90), 4 DEGREES(2*PI()),DEGREES(RADIANS(60)) 5 FROM DUAL;
RADIANS(x):将角度x转换为弧度 DEGEREES(y):将弧度y转为角度
1 #三角函数 2 SELECT SIN(RADIANS(30)),DEGREES(ASIN(1)),TAN(RADIANS(45)),DEGREES(ATAN(1)) 3 FROM DUAL;
SIN即sin函数,ASIN即arcsin函数 tan,cos同理类似 且传入的参数类型一定要为弧度,而不能是角度
1 #指数和对数 2 SELECT POW(2,5),POWER(2,4),EXP(2) 3 FROM DUAL; 4 5 SELECT LN(EXP(2)),LOG(EXP(2)),LOG10(10),LOG2(4) 6 FROM DUAL;
POW,POWER(x,y):x的y次方 EXP(2):e的2次方 LN(2):为ln2 LOG(2):默认以e为底 LOG10(10):以10为底 LOG2(4):以2为底
1 #进制间的转换 2 SELECT BIN(10),HEX(10),OCT(10),CONV(10,12,8) 3 FROM DUAL;
BIN(10):用2进制表示10 HEX(10):用8进制表示10 OCT(10):用16进制表示10
CONV(10,12,8):将10进制的12用8进制来表示
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧