MySQL常用函数汇总(字符串、时间函数等)
admin
2024-01-30 03:53:53
0

MySQL常用函数汇总

时间函数(日期)

函数名说明
CURDATE() / CURTIME()返回当前日期(年-月-日) / 返回当前时间(时:分:秒)
NOW()当前当前的日期和时间(年-月-日 时:分:秒)
DATE_FORMAT(date,fmt)按照fmt的格式,对日期date进行格式化 (例:只截取年月 date_format( ‘2021-06-12’, “%Y%m” ))
SEC_TO_TIME(seconds)秒数转换成为时分秒(小时:分:秒)
TIME_TO_SEC时分秒转换为秒数
DATEIFF(data1,data2)返回date1和date2两个日期相差的天数
DATE_ADD(date,INTERVAL expr int)对给定的日期增加减少指定的时间单元(unit day天/hour 小时/ minutes 分钟 / second 秒 )
DATE_ADD(date,INTERVAL expr type)对给定的日期减少 ,(跟add相反)
EXTRACT(unit FROM date)返回日期date的指定部分

fmt格式:

%Y - 代表年 ,%m: 月份(0-12) , %d :天(0-31),  %H : 小时(0-24) , %i : 分钟(0-59) , %s: 秒(0-59)

例子

获取当前时间、实时时间日期、相差天数

SELECT CURdate() as '当前日期(年-月-日)' ,CURTIME()  as '当前时间(时:分:秒)',now() as '当前日期时间(年-月-日 时:分:秒)', SEC_TO_TIME(120) as '秒数转时分秒', DATE_FORMAT('2021-06-12','%Y') as '日期格式化', DATEDIFF('2021-06-15','2021-06-12') as '日期相差天数'

计算每门课程,上线时间距当前时间的天数

select dateiff(now(), online_time ) as diff_day from imc_course

操作当前时间增加一天、减少一天、增加一年等操作

#当前时间日期加1天
select now(), date_add(now(),INTERVAL 1 day)#当前时间日期加1年
select now(), date_add(now(),INTERVAL 1 year)#当前时间日期减一天
select now(), date_add(now(),INTERVAL -1 day)
select now(), DATE_SUB(now(),INTERVAL 1 day)	#效果同理(只是不加-符号)#当前时间日期减1小时30分
select now(), date_add(now(),INTERVAL '-1:30' HOUR_MINUTE)

提取时间格式化日期的区别

#格式化获取
select  now(),date_format(now(), "%Y") as '获取年',date_format(now(), "%m") as '获取月份',date_format(now(), "%Y H:i:s") as '获取年  时分秒'#提取日期
select now(), extract(YEAR from now() ) as '提取当前时间的年',Extract(MONTH from now() ) as  '提取出月份',extract(day from now()) as '提取日期',

时间函数 (时间戳)

函数名说明
UNIX_TIMESTAMP()【日期转时间戳】返回unix时间戳(从1970年起~当前今开发的秒数)
FROM_UNIXTIME()【时间戳转日期】把Unix时间转化日期时间

很多开发比较喜欢日期用unix时间戳 形式来存储。,因为大家都认为时间戳是整数类型来保存日期数据性能会更好。

其实现在看来,这种方式也存在一些问题。unix时间戳必须经过转化才能显示日期。使用起来并不方便(不太推荐),好在mysql提供2个函数,可以时间戳转日期格式(相互转化)。

select UNIX_TIMESTAMP('2018-12-25 12:25:00');
#结果:1545711900select FROM_UNIXTIME(1545711900);
#结果:2018-12-25 12:25:00

字符串函数

CONCAT(str1,str2,...)【拼接】把字符串str1,str2连接成一个字符串来显示
CONCAT_WS(sep,str1,str2,...)【拼接】用指定的分隔符sep连接字符串
CHAR_LENGTH(str)【判断长度】返回字符串str的字符个数
LENGTH(str)【判断长度】返回字符串str的字节个数
FORMAT(X,D[,locale])【截取】将数字N格式化为格式,如“#,##,###.###” 并舍入到D位小数
LEFT(str,len)/ RIGHT(str,len)【截取】从字符串的左/右边起返回len长度的子字符串
SUBSTRING(str,pos,[len])【截取】从字符串str的pos位置起返回字符长度为len的字符串
SUBSTRING_INDEX(str,delim,count)【分隔符截取】返回字符串str按delim分隔的前count个子字符串
LOCATE(substr,str)【截取】在字符串str中返回子串substr第一次出现的位置
TRIM([remstr FROM str])【去除】从字符串str两端删除不需要的字符remstr

其他函数

函数名说明
ROUND(X,D)对数值X进行四舍五入保留D位小数
RAND()返回一个在0和1之间的随机数 (不推荐,特别是存量大数据表,性能差)
CASE WHEN [condition] THEN result [ WHEN [condition] THEN result …] [ ELSE result] END用于实现其他语言的case…when功能,提供数据流程控制
MD5返回str的MD5值
FIND_IN_SET(str,strlist)获取字段内要查询的字符串
REPLACE字段字符串匹配替换

相关内容

热门资讯

拥有魔法般的装置——楼层叠加器... 想象一下,如果你能拥有一个魔法般的装置,它能让你在自己的房间里体验到不同楼层的乐趣,那该有多酷!这就...
gps rtk测量技术规范-G... 嘿,朋友们,今天咱们聊聊那个让地理测绘变得像变魔术一样的技术——GPSRTK测量!这玩意儿,简直不要...
igfxtrayexe-igf... 哎呀呀,说到这个igfxtray.exe,我就一肚子火!你知道吗,这小东西就像是藏在我电脑里的一个小...
辽宁朝阳二院双眼皮手术:技术好... 哎呀,说到辽宁朝阳二院的双眼皮手术,我这心里就激动得不行!你知道吗,那不仅仅是一双眼睛的变化,简直是...
番茄花园u盘装系统-番茄花园 ... 大家好呀,我今天真的是超级兴奋,要跟大家分享一下我最近的一次超级给力的电脑装系统经历!你们有没有试过...
四川资阳乐至县怎么样-四川资阳... 哎呀,说到四川资阳的乐至县,我这颗心就扑通扑通跳个不停!这个地方,简直就是个宝藏,藏着无数让人心动的...
望京医院儿科电话:让人又爱又恨... 哎呀呀,说到望京医院的儿科电话,我这心里就五味杂陈的。你知道的,每当孩子有个头疼脑热,你第一个想到的...
医保软件门诊管理系统:让看病变... 嘿,大家好!今天我要聊聊我们的医保软件门诊管理系统,这玩意儿真的是让看病变得有点儿小激动呢!以前去医...
深度系统win8.1纯净版-W... 嘿,大家好!今天我想聊聊我最近的一次电脑大改造——升级到了Win8.1纯净版。你知道吗?这次的改变,...
运维监控日常工作内容-运维小哥... 在这个数字化的世界里,有一群人,他们就像是守护者,默默地在后台守护着每一台服务器,每一次数据传输的安...
3s技术与数字地球-3S 技术... 3S技术——遥感(RS)、地理信息系统(GIS)和全球定位系统(GPS)——已经成为我们探索和理解这...
中国电信新视通:画质高清、稳定... 大家好,我是一个普通的上班族,今天要和大家聊一聊我最近迷上的中国电信新视通。这玩意儿,真的是太神奇了...
石大路红荔路口监控-红荔路与石... 啊,红荔路与石大路的交叉口,这个地方,每天都是车水马龙,人来人往的,热闹得不得了。但是你知道吗?就在...
空调省电的五种方法-夏天空调省... 嘿,小伙伴们!夏天到了,空调成了我们的救星,但电费也跟着飙升,是不是感觉钱包在滴血?别担心,今天我这...
gps定位系统工作原理-GPS... 大家好呀!今天我要和大家聊聊那个神奇的小东西——GPS定位系统!你们有没有想过,为什么我们走到哪里,...
证件号码43045664137... 嘿,你知道吗?每当我看到那个数字串——430456641374,我的心就不由自主地跳得快起来。这不仅...
breezeblocks:城市... 在这个喧嚣的城市里,每当我走过那些由breezeblocks构成的墙,心中总会涌起一股莫名的情绪。B...
linux当黑客-Linux ... 嘿,兄弟们,今天咱们聊聊Linux和黑客的故事,这可不是什么正经教程,就是我个人的一些小激动和小梦想...
2024执业助理医师考试查分-... 哎呀,说到这个执业助理医师考试查分,我的心都快跳出来了!每次考试结束,就像经历了一场激烈的战斗,考场...
extjs 验证码-ExtJS... 嘿,大家好!今天咱们聊聊一个超级重要但又常常被忽视的话题——ExtJS验证码。你知道吗,这个小东西可...