mysql怎么计算时间差

mysql怎么计算时间差,第1张

用时间戳来计算

SELECT (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP('2015-04-20 15:12:12'))/60

也就是得到两个时间相差的秒数,然后除60得到分种。

不考虑 “天”的因素:

select if(month(d2)-month(d1)>0,

concat(year(d2)-year(d1),'年',month(d2)-month(d1),'月'),

concat(year(d2)-year(d1)-1,'年',month(d2)-month(d1)+12,'月')) as r from xxxxx

----------------------------------------------------------------------------------------------------------

例子:

d1='2013-05-13'

d2='2014-07-13'

select if(month('2014-07-13')-month('2013-05-13')>0,

concat(year('2014-07-13')-year('2013-05-13'),'年',month('2014-07-13')-month('2013-05-13'),'月'),

concat(year('2014-07-13')-year('2013-05-13')-1,'年',month('2014-07-13')-month('2013-05-13')+12,'月')) as r

结果:1年2月

=================================================================

d1='2013-05-13'

d2='2014-01-13'

select if(month('2014-01-13')-month('2013-05-13')>0,

concat(year('2014-01-13')-year('2013-05-13'),'年',month('2014-01-13')-month('2013-05-13'),'月'),

concat(year('2014-01-13')-year('2013-05-13')-1,'年',month('2014-01-13')-month('2013-05-13')+12,'月')) as r

结果:0年8月

TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)

返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。

结果的单位由interval 参数给出。该参数必须是以下值的其中一个:

FRAC_SECOND 表示间隔是毫秒

SECOND  秒

MINUTE  分钟

HOUR  小时

DAY  天

WEEK  星期

MONTH  月

QUARTER  季度

YEAR  年

mysql> SELECT TIMESTAMPDIFF(SECOND, '2012-12-21', CURRENT_TIMESTAMP()) AS `Second`

+----------+

| Second   |

+----------+

| 53880812 |

+----------+

1 row in set (0.00 sec)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7235459.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存