如何获取mysql上两个日期之间的差异天数?

如何获取mysql上两个日期之间的差异天数?

我需要在MySQL的几个日期内获得包含的天数。

例如:

  • 入住日期是 12-04-2010

  • 离开日期 15-04-2010

日差为3


RISEBY
浏览 897回答 3
3回答

芜湖不芜

请注意,如果您想在2个日期之间计算24小时,则datediff可能会为您返回错误的值。正如文件所述:在计算中仅使用值的日期部分。结果select datediff('2016-04-14 11:59:00', '2016-04-13 12:00:00')返回1而不是预期的0。解决方案正在使用select timestampdiff(DAY, '2016-04-13 11:00:01', '2016-04-14 11:00:00'); (注意与datediff相比的参数顺序)。一些例子:select timestampdiff(DAY, '2016-04-13 11:00:01', '2016-04-14 11:00:00'); 返回0select timestampdiff(DAY, '2016-04-13 11:00:00', '2016-04-14 11:00:00'); 返回1select timestampdiff(DAY, '2016-04-13 11:00:00', now()); 返回自2016-04-13 11:00:00至今已过去24小时的全天数。希望它会对某人有所帮助,因为起初并不是那么明显,为什么dateiff会返回看似意外或错误的值。

富国沪深

使用该DATEDIFF()功能。文档示例:SELECT DATEDIFF('2007-12-31 23:59:59','2007-12-30');     -> 1
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL