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

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

    SELECT TIMESTAMPDIFF(类型,开始时间,结束时间)

    • FRAC_SECOND 毫秒
    • SECOND 秒
    • MINUTE 分钟
    • HOUR 小时
    • DAY 天
    • WEEK 星期
    • MONTH 月
    • QUARTER 季度
    • YEAR 年

    相差的秒数:

    1. SELECT TIMESTAMPDIFF(SECOND,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的分钟数:

    1. SELECT TIMESTAMPDIFF(MINUTE,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的小时数:

    1. SELECT TIMESTAMPDIFF(HOUR,'1993-03-23 00:00:00 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的天数:

    1. SELECT TIMESTAMPDIFF(DAY,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的周数:

    1. SELECT TIMESTAMPDIFF(WEEK,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的季度数:

    1. SELECT TIMESTAMPDIFF(QUARTER,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的月数:

    1. SELECT TIMESTAMPDIFF(MONTH,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    相差的年数:

    1. SELECT TIMESTAMPDIFF(YEAR,'1993-03-23 00:00:00',DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S'))

    获取当前日期:

    1. SELECT NOW() SELECT CURDATE()

    当前日期增加一天:

    1. SELECT DATE_SUB(CURDATE(),INTERVAL -1 DAY)

    当前日期减少一天:

    1. SELECT DATE_SUB(CURDATE(),INTERVAL 1 DAY)

    当前日期增加一周:

    1. SELECT DATE_SUB(CURDATE(),INTERVAL -1 WEEK)

    当前日期增加一月:

    1. SELECT DATE_SUB(CURDATE(),INTERVAL -1 MONTH)
    1. SELECT DATE_SUB(NOW(),INTERVAL -1 MONTH)