MySql计算两个日期时间的差函数:
第一种:
TIMESTAMPDIFF函数,需要传入三个参数,第一个是比较的类型,可以比较
FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型,第二个和第三个参数是待比较的两个时间,比较是后一个时间减前一个时间,具体用法如下:
SELECT TIMESTAMPDIFF(DAY,'2012-10-01','2013-01-13');
返回结果是104,这里比较的是两个时间的天数差;
SELECT TIMESTAMPDIFF(MONTH,'2012-10-01','2013-01-13');
这里比较的是两个时间的月份,返回的结果是3;
第二种方法: DATEDIFF函数,就传入两个日期函数,比较的DAY天数,第一个参数减去第二个参数的天数值,具体用法如下:
SELECT DATEDIFF('2013-01-13','2012-10-01');
返回的结果也是104。
另外其它的日期函数,
now()函数返回的是当前时间的年月日时分秒,如:
2008-12-29 16:25:46
CURDATE()函数返回的是年月日信息: 如:
2008-12-29
CURTIME()函数返回的是当前时间的时分秒信息,如:
16:25:46
另外,如果我们想对一个包含年月日时分秒日期格式化成年月日日期,可以使用DATE(time)函数,如
DATE(now()) 返回的是
2008-12-29
TIMESTAMPDIFF(unit,begin,end):
计算
两个
DATE或DATETIME值之间的差值.TIMESTAMPDIFF
函数
允许其参数具有混合类型,例如,begin是DATE值,end可以是DATETIME值。TIMEDIFF(dt1, dt2):
计算
两个
TIME或DATETIME值之间的差值,
两个
必须为相同类型的参数,即TIME或DATETIME。TIMEDIFF
函数
返回表示为时间值的dt1 - dt2的结果,如果任一参数为NULL,TIMEDIFF
函数
将返回NULL。
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-
第一种、TIMESTAMPDIFF
函数
TIMESTAMPDIFF
函数
,需要传入三个参数,第一个是
比较
的类型,可以
比较
FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型,第二个和第三个参数是待
比较
的
两个
时间,
比较
是后一个时间减前一个...
计算
两个
时间之间的差值1.datediff()
计算
date差值2.timediff()
计算
时分秒差值3.timestampdiff()
计算
指定维度的
时间差
值
1.datediff()
计算
date差值
语法:datediff(end_time,start_time),返回end_time-start_time的
日期
差值
select datediff('2020-01-04 22:11:12','2020-01-02 23:11:12') from dual
返回值:2
2.timediff()
计算
时分秒差
-----------------------------
TIMESTAMPDIFF
函数
,有参数设置,可以精确到天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND),使用起来比datediff
函数
更加灵活。对于
比较
的
两个
时间,时间小的放在前面,时间大的放在后面。
--相差1天
select TIMESTAMPDIFF(DAY, '2018-03-20 23:59:00', '2015-03-22
MySql
计算
两个
日期
的
时间差
函数
TIMESTAMPDIFF用法:
TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)
说明:返回结果 datetime_expr2-datetime_expr1
返回
日期
或
日期
时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的
单位由interval 参数给出。interval 的法定值同TIMESTAMPADD()
函数
说明中
可以使用
mysql
的内置的
函数
,TimeStampDiff();
2.TimeStampDiff()的使用的语法是,TimeStampDiff(间隔类型,前一个
日期
,后一个
日期
);
其中,间隔类型有FRAC_SECOND 表示间隔是毫秒,SECOND 秒,MINUTE 分钟,HOUR 小时,DAY ...
SELECT DATEDIFF('2020-06-13',DATE_FORMAT(NOW(),'%Y-%m-%d')) AS DiffDate
二、这种是
比较
少用但是
查询
功能多的
MySQL
自带的
日期
函数
,可以
计算
两个
日期
相差的年,季,月,周,日,时,分