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字段字符串匹配替换

相关内容

热门资讯

安卓系统车机互联软件 你有没有发现,现在开车的时候,手机和车机之间的互动越来越频繁了呢?想象你正驾驶着爱车,一边享受着音乐...
荣耀play4安卓系统,智能生... 你有没有发现,最近手机圈里又掀起了一股热潮?没错,就是荣耀Play4这款新机!它不仅外观时尚,性能强...
安卓模拟苹果多开系统,打造跨平... 你有没有想过,在安卓手机上也能享受到苹果系统的多开功能呢?没错,这就是今天我要跟你分享的神奇话题——...
广汽埃安是安卓系统吗,搭载安卓... 你有没有想过,你的爱车广汽埃安,它的操作系统是不是安卓呢?这个问题,估计不少车友都在心里默默琢磨过。...
安卓系统是google的吗,谷... 你有没有想过,安卓系统是不是谷歌的亲生孩子呢?这个问题,就像是在问苹果是不是苹果树的宝宝一样,让人好...
安卓系统的设置程序下载,轻松掌... 你有没有发现,手机里的安卓系统设置程序真是五花八门,让人眼花缭乱?今天,就让我带你一起探索这个神秘的...
安卓系统的手机家园,打造个性化... 你有没有发现,现在手机的世界里,安卓系统的手机家园可是越来越热闹了呢!想象每天打开手机,就像走进了一...
安卓系统哪些相机可以调,支持实... 你有没有发现,手机拍照已经成为我们生活中不可或缺的一部分呢?无论是记录生活的点滴,还是捕捉美丽的瞬间...
安卓手机系统英文变中文,And... 你有没有发现,你的安卓手机上那些英文字母的系统提示,突然间变成了熟悉的中文呢?是不是觉得瞬间亲切感倍...
系统语言可以删除吗安卓,基于系... 你有没有想过,手机里的那些系统语言,是不是有时候觉得有点多余呢?比如,你是个地道的英语使用者,却总是...
安卓系统收取专利吗,揭秘科技巨... 你有没有想过,那个陪伴你每天刷手机、玩游戏、办公的安卓系统,它背后是不是也有自己的“小金库”呢?没错...
安卓屏幕怎么更新系统,轻松掌握... 亲爱的安卓手机用户们,你是不是也和我一样,时不时地想给手机来个“大变身”,让它焕然一新呢?没错,说的...
安卓系统有没有类似carpla... 你有没有想过,在安卓系统上,能不能也像苹果用户那样,轻松连接汽车音响系统呢?没错,我说的就是那个神奇...
安卓系统哪里升级包,生成与更新... 亲爱的安卓用户们,你是不是也和我一样,时不时地想给手机来个“大变身”,让它焕然一新呢?那就得提到那个...
安卓手机怎么恢复老系统,轻松恢... 手机用久了,是不是觉得系统越来越卡,功能也越来越不跟得上潮流了呢?别急,今天就来教你怎么把安卓手机恢...
安卓系统如何安装windows... 亲爱的安卓用户们,你是否曾幻想过在手机上体验Windows 7的韵味?别再羡慕那些拥有Windows...
旧的安卓系统怎么备份,轻松保存... 亲爱的安卓用户们,你是否曾经因为系统升级或者手机意外重启而担心丢失了珍贵的照片、联系人或者应用数据呢...
安卓手机系统文件被破坏,全面解... 手机突然间罢工了,是不是很崩溃?别急,今天就来聊聊安卓手机系统文件被破坏的那些事儿。相信我,掌握了这...
街头霸王四安卓系统,畅享格斗盛... 你知道吗?最近在安卓系统上,有一款游戏可是火得一塌糊涂,那就是《街头霸王四》!这款经典格斗游戏在安卓...
阿里tv安卓系统刷机,畅享智能... 你有没有发现,家里的阿里TV用久了,系统有点卡卡的呢?别急,今天就来教你怎么给它来个焕然一新的刷机大...