如何獲取mysql上兩個日期之間的差異天數?我需要在MySQL的幾個日期內獲得包含的天數。例如:入住日期是 12-04-2010離開日期 15-04-2010日差為3
3 回答

蕪湖不蕪
TA貢獻1796條經驗 獲得超7個贊
請注意,如果您想在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會返回看似意外或錯誤的值。

富國滬深
TA貢獻1790條經驗 獲得超9個贊
添加回答
舉報
0/150
提交
取消