浅谈MySQL函数
16lz
2021-12-09
- 数学函数
- 字符串函数
- 时间函数
- 加密函数
1、数学函数
注意: 每个函数前面都需要加 : SELECT
。
数学函数
ABS()
返回绝对值 如: (-100) 值 : 100PI()
返回Π的圆规率 如 (不用写) 值 : 3.1415926CEIL()
向上取整数 如:(3.14) 值 :4 ( 注意第三个是i )
FLOOR()
向下取整数 如: (3.14) 值 :3POW(x,y)
x的y次方 如(2,3) 值 :8RAND()
随机返回0-1值 如 :() 值 : 0.018137501569592863TRUNCATE(x,y)
x保留y位小数 如 :(3.1415926,3) 值 :3.141
-- abs() 绝对值SELECT ABS (-100);-- pi() 返回圆 Π 规率SELECT PI();-- SQRT ()返回非负数x的二次方SELECT SQRT(2);-- POW 返回 x的 y 次乘方 需要SELECT POW(2,10);SELECT POWER(2,10)-- CELL() or SELECT CEIL(3.14); -- 向上取整数-- floor()SELECT FLOOR(3.14); -- 向下取整数-- round() 四舍五入取整数 还可以保留小数SELECT ROUND(3.4);SELECT ROUND(3.5);SELECT ROUND(3.7,2)-- pow() x 的 y 次方SELECT POW(2,3);-- random 随机0到1 SELECT RAND();-- truncate() 保留小数 选择 SELECT TRUNCATE(3.14159265758,3);SELECT TRUNCATE(RAND()* 1000 ,3);
LENGTH()
获取长度 如:('abc') 值为: 3CHAR_LENGTH
长度 如:('add') 值为: 3UPPER()
字符串里英文全大写 ('abcde') 值:ABCDELOWER()
字符串里英文全小写 ()TRIM()
去空格REVERES()
反转REPLACE(str,len1,len2)
len1代替len2SUBSTRLNG(y,z)
截取y 到 z
-- 字符串函数 -- RIGHTSELECT LENGTH('fdsajfadslksdafk');SELECT CHAR_LENGTH('fdsajfadslksdafk');-- lower upper --全部变成大写、小写SELECT UPPER('fdsajfadslksdafk');SELECT LOWER('AFASDF');-- trim() 去两端空格SELECT TRIM( ' abc ' )SELECT TRIM(' afdjkadsfjkll asd;fasf ');-- reverse() 反转SELECT REVERSE('abcdefg');SELECT REVERSE(TRIM(' afdjkadsfjkll asd;fasf '));、-- replace(str,len1,len2) len1 代替 len2SELECT REPLACE('QQ群个个都是人才,说话又好听' , '人才', '鬼才');SELECT REPLACE('路演其是班草', '阿呆呆', '曹某某');-- 截取 y 截取 z SELECT SUBSTRING('监x里个个都是人才,说话又好听',4,5);
SYSDATE()
系统日期+时间CURDATE()
系统日期CURETIME()
系统时间WEEKDAY()
返回日期参数 注意时间:0-6需要+1DAYNAME()
系统告诉你 今天星期几YEAR()
查年MONTH()
查月DAY()
查日HOUR()
查时MINUTE()
查分SECOUND()
查秒WEEK()
查周
ADDDATE(date
,interval
,值) 添加到后面得日期 如 : (NOW(),INTERVAL,50 YEAR)
DATEDIFF(date
,date
) 连个值得相隔 如 : ABS
(DATEDIFF('2005-8-26','2021-9-23'))
-- 日期函数-- 系统当前日期 sysdate()SELECT SYSDATE() 系统当前日期; -- 要 时分秒 -- (日期和时间)SELECT CURDATE() 系统当前日期; -- 当前的日期 -- (日期)SELECT CURTIME() 系统当前时间 ;-- (时间)-- dayofweek() 今天时本周week -月month - 年yearSELECT DAYOFYEAR(SYSDATE()) 今天是这一年的第几天;SELECT DAYOFMONTH(SYSDATE()) 今天是这一月的第几天; SELECT DAYOFWEEK('2021-9-19') 今天是这一周的第几天; -- 1-7-- weekday SELECT WEEKDAY(SYSDATE()) + 1 今天是星期几; -- 0-6-- dayname 星期几 SELECT DAYNAME('2001-9-18') -- 年月日时分秒 year month day hour minute secondSELECT YEAR(SYSDATE()) 年;SELECT MONTH(SYSDATE()) 月;SELECT DAY(SYSDATE()) 日;SELECT HOUR(SYSDATE()) 时;SELECT MINUTE(SYSDATE()) 分;SELECT SECOND(SYSDATE()) 秒; -- 周 SELECT WEEK(SYSDATE()) 周; -- adddate(date,interval expr type) 添加时间后的日期-- 假设你还有50年寿命,50年后这个时间是多少SELECT ADDDATE(NOW(),INTERVAL 50 YEAR);SELECT ADDDATE(NOW(), INTERVAL 50 SECOND);-- datediff(date1, date2) 两个时间的间隔 SELECT ABS(DATEDIFF('2005-8-26','2021-9-23')); -- 1984 - 3 - 24-- 假设路演其出生时间2005年7月15 请问他到选择活了多少分钟-- 假设他还有80年的寿命 80年后是多久SELECT ABS(DATEDIFF('2005-7-15',SYSDATE()) ) * 1444 ;SELECT ADDDATE(NOW(), INTERVAL 80 YEAR);
更多相关文章
- ES6 变量声明,箭头函数,数组方法,解构赋值,JSON,类与继承,模块化练习
- 浅谈Java中Collections.sort对List排序的两种方法
- 箭头函数的基础使用
- Python技巧匿名函数、回调函数和高阶函数
- 浅析android通过jni控制service服务程序的简易流程
- Android(安卓)bluetooth介绍(四): a2dp connect流程分析
- Android架构分析之使用自定义硬件抽象层(HAL)模块
- Android中OpenMax的适配层
- android 包管理系统分析