MySQL几个计算时间的函数汇总

来源:互联网 发布:淘宝卖游戏点卡赚钱吗 编辑:程序博客网 时间:2024/05/14 01:57
MySQL一直以来也是大家常用的数据库之一,在开发中经常会碰到日期的处理,为了方便大家,我特地把mysql的一些跟计算日期有关的函数整理了下,这也是小虾第一次写博客,还望不喜勿喷,当然大家如果有补充的,可以在评论中追加。
1、计算两个时间直接相差的天数(大日期放前面则返回一个正数,小日期放前面就返回一个负数)

select DATEDIFF('2015-09-10 08:08:08', '2015-09-09 00:00:00') days;



2、计算两个时间之间相差的小时数(同上)
select TIMEDIFF('2015-09-09 08:08:08', '2015-09-09 00:00:00') hour;


3、计算两日期直接的相差的月份(个人觉得这个不是太好用,貌似日期格式必须按照YYYY-MM设置)
select PERIOD_DIFF(201509, 201506) month;


4、给某个日期增加一个月份后的日期
select period_add(201509,2);




5、计算某个日期减去一个时间间隔后的日期
select date_sub('2015-09-09 10:39:35', interval '1 0:1' DAY_MINUTE);



6、计算某个时间增加一个时间间隔后的日期(同样参数是可变的)
select DATE_ADD('2015-09-08 10:38:35',INTERVAL 1 YEAR);



7、最后为大家介绍个时间差的通用函数(unit决定返回值得类型是年、月、日、时、分、秒 )
select TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)






2 0