MySQL计算两个日期相差的天数、月数、年数

2022-10-17,,,,

mysql自带的日期函数timestampdiff计算两个日期相差的秒数、分钟数、小时数、天数、周数、季度数、月数、年数,当前日期增加或者减少一天、一周等等。

select timestampdiff(类型,开始时间,结束时间)

相差的秒数:

select timestampdiff(second,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的分钟数:

select timestampdiff(minute,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的小时数:

select timestampdiff(hour,'1993-03-23 00:00:00 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的天数:

select timestampdiff(day,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的周数:

select timestampdiff(week,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的季度数:

select timestampdiff(quarter,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的月数:

select timestampdiff(month,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

相差的年数:

select timestampdiff(year,'1993-03-23 00:00:00',date_format(now(), '%y-%m-%d %h:%i:%s'))

获取当前日期:

select now()
select curdate()

当前日期增加一天:

select date_sub(curdate(),interval -1 day)

当前日期减少一天:

select date_sub(curdate(),interval 1 day)

当前日期增加一周:

select date_sub(curdate(),interval -1 week)

select date_sub(now(),interval -1 month)

当前日期增加一月:

select date_sub(curdate(),interval -1 month)
  • frac_second  毫秒
  • second  秒
  • minute  分钟
  • hour  小时
  • day  天
  • week  星期
  • month  月
  • quarter  季度
  • year  年

《MySQL计算两个日期相差的天数、月数、年数.doc》

下载本文的Word格式文档,以方便收藏与打印。