mysql 计算时间相差

MySQL计算两个⽇期(两个时间)相差的天数、⽉数、年数
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(CURDATE(),INTERVAL -1 MONTH)
SELECT DATE_SUB(NOW(),INTERVAL -1 MONTH)
FRAC_SECOND 毫秒
SECONDMINUTE 分钟
HOUR ⼩时
DAY 天
WEEK 星期
MONTH ⽉
QUARTER 季度
yearIF(TIMESTAMPDIFF(DAY,DATE_FORMAT(NOW(), '%Y-%m-%d'),valid_end_time)>0,TIMESTAMPDIFF(DAY,DATE_FORMAT(NOW(), '%Y-%m-%d'),valid_end_time),0)

版权声明:本文为qq_37741426原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。