0

我有一个选择查询。我今天通过了date(now()),到目前为止,我希望我的查询返回当天没有小时数。

SELECT DATEDIFF(CURDATE(), to) as timeleft

例如:now() 将是今天的日期 16/10/2012 和日期将是 18/10/2012,我希望我的查询返回 24 小时。

是否可以从日期开始计算确切的小时数,因为在 2012 年 10 月 16 日已经过去了将近半天,我们能否将输出设为 36 小时。

4

2 回答 2

1

当我想计算 2 个日期之间的差异时,我使用UNIX_TIMESTAMP()给我 unix 时间,然后计算 2 个日期之间的秒数差异。

SELECT ((UNIX_TIMESTAMP(todate) - UNIX_TIMESTAMP(fromdate))/3600) AS hoursdiff
于 2012-10-16T18:25:31.590 回答
0

您可以使用 :

SELECT TIMESTAMPDIFF(Hour,now(),'2012-10-18');
于 2012-10-16T18:46:40.650 回答