Mysql如何获得两个日期之间的确切日期和时间

时间:2016-01-11 11:46:06

标签: mysql

我将日期和时间作为输入传递。

' 2015-01-12 10:30:00'和' 2015-01-13 11:30:00'像这样。 我们可以在时间戳之间找到天,小时,小步,秒等。使用名为 timestampdiff()的函数。

我尝试了这个查询。

SELECT TIMESTAMPDIFF(HOUR,'2015-01-12 10:30:00','2015-01-13 11:30:00')/24 FROM DUAL

但它给我输出 1.04

我的要求是两个日期之间的确切日期和时间。

例:  ' 2015-01-12 10:30:00'和' 2015-01-13 11:30:00'为此

输出 1天1小时。

谢谢。

2 个答案:

答案 0 :(得分:2)

只需调用该功能两次。要使用您想要的句子获得结果,您可以执行以下操作:

SELECT CONCAT(
  TIMESTAMPDIFF(DAY,'2015-01-12 10:30:00', '2015-01-13 11:30:00'), 
  " day(s) and ",
  TIMESTAMPDIFF(HOUR,'2015-01-12 10:30:00', '2015-01-13 11:30:00') % 24, 
  " hour(s)");

如果您还想要月份或分钟间隔,只需再添加一个函数调用和相应的模数

答案 1 :(得分:0)

此查询可以为您提供所需的输出

SELECT CONCAT(
TIMESTAMPDIFF(DAY,'2015-01-12 10:30:00', '2015-01-13 11:30:00'),
"day(s) and ",
TIMESTAMPDIFF(HOUR,'2015-01-12 10:30:00', '2015-01-13 11:30:00') % 24,
" hour(s)");