当前位置:Gxlcms > 数据库问题 > MYSQL日期时间总结

MYSQL日期时间总结

时间:2021-07-01 10:21:17 帮助过:4人阅读

12:13:45","10:13:45"),timediff("12:13:45","15:23:25") , #前者-后者,可能会返回负数 # 结果:天数 datediff(now(),"2020-07-01"), datediff(now(),"2020-08-12"), #这个不考虑时间,只计算天数的差值 #计算加一个数后的年月,计算两个年月之间相差的月数 period_add(202008,17), period_add("202009",1), period_diff(202009,201904) #前者-后者

 

 

字符串转换为日期函数str_to_date( )函数

#注意前者月份是阿拉伯数字,所以格式里是%m,但后者月份是英文形式,所以格式里使用%M
#格式里年月日的顺序要跟字符串中对应
str_to_date("5 24 2019" ,"%m %d %Y") as a, STR_TO_DATE("August 10 2017", "%M %d %Y") as b

结果

技术图片

 

 

 

TIMESTAMP(  )函数

第二个参数只有1个数字时,是当做秒数计算的,而后面指定minute, day都报错

暂时还不清楚有什么用

技术图片

 

 

 技术图片

 

 

 

 

 

 

 

时间、秒数之间的转换

技术图片

 

 

 

 

last_day( ):返回给定日期那一月份的最后一天

技术图片

 

 

 

 

自定义生成日期、时间

makedate(year, 天数)  #根据指定的天数,返回指定年份的日期

maketime(hour, minute,  second) #组合成一个时间

举例

技术图片

 

 

 

 

 

 

 

 

 

 

 

 

 

获取系统当前日期时间(PS:返回格式: 日期,时间  都有)

函数: 注意后面的几个函数括号可以省略

select now(), sysdate(),  #必须带着括号
localtime,  localtime(),  # 返回结果都是当前日期时间格式,后面的这几种括号可有可无
localtimestamp,   localtimestamp(),
current_timestamp,  current_timestamp();

结果:

技术图片

 

 

 

 

 

 

 

只返回日期 或时间,两者不是同时存在,括号不能省略(否则报错)

日期: curdate( ), current_date( )

时间:curtime( ),current_time( )

 

技术图片

 

 

 

 

 

DATE( ),  TIME( )  函数,分别提取日期部分、时间部分

技术图片

 

 

 

 

 

 

 

日期加减,年月日 时分秒 都可以

adddate(now(),3),subdate(now(),-3), adddate(now(),-3), subdate(now(),3),  # 可使用负数,adddate用负数代表减去几天,subdate使用负数代表加上几天

adddate(now(),interval 10 minute),subdate(now(),interval 10 minute)  # adddate, subdate也可以指定参数interval

date_add(now(),interval 3 day),date_sub(now(),interval 3 day)  # 使用date_add和date_sub必须带上参数Interval n 单位类型

 

技术图片

 

 

 

 

时间加减,单位只能是秒

subtime(now(),3),  addtime(Now(),10)

 

 

 

 

 

 

 

 

 

 

 

 

 

提取年月日,只要参数是日期-时间格式都可

技术图片

 

 

 提取时分秒,只要参数是日期-时间格式都可

技术图片

 

MYSQL日期时间总结

标签:now()   loading   必须   http   period   class   存在   day   格式化   

人气教程排行