112
A
回答
171
怎麼樣的DATEDIFF功能?
引述手冊的頁面:
DATEDIFF()返回表達式1 - 表達式2 表示爲從一個 日至其它在天的值。 expr1和expr2 是日期或日期和時間表達式。 只有值的日期部分 計算中使用
在你的情況,你會使用:
mysql> select datediff('2010-04-15', '2010-04-12');
+--------------------------------------+
| datediff('2010-04-15', '2010-04-12') |
+--------------------------------------+
| 3 |
+--------------------------------------+
1 row in set (0,00 sec)
但需要注意的日期應寫爲YYYY-MM-DD
,而不是像你發佈的DD-MM-YYYY
。
14
4
我喜歡TIMESTAMPDIFF,因爲你可以很容易地如果需要的話改變單位。
25
請注意,如果你想計數豐滿24天在2個日期之間,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年4月13日11:00有多少全日24小時已經過去了:00直到現在。
希望它能幫助某人,因爲一開始並不是那麼明顯,爲什麼datediff返回的值似乎是意外或錯誤的。
相關問題
- 1. 獲取兩個日期之間的天數差異
- 2. 如何獲取兩個日期時間值之間的差異?
- 3. 獲取今天的日期和上一天之間的天數差異
- 4. 在兩個日期之間獲取日期差異
- 5. 獲取兩個日期之間的差異秒數dateTime
- 6. 如何獲得JavaScript中兩個日期之間的差異天數?
- 7. 兩個日期之間的天差
- 8. 如何獲得兩個日期之間的星期差異
- 9. MySQL - 獲取兩個日期之間的年齡和天數
- 10. 差異在C#兩個日期之間的天 - 返回整數
- 11. 網格中兩個日期之間的差異天數
- 12. 獲取Jekyll中兩個日期之間的天差
- 13. 從2個REF'd列獲取兩個日期之間的差異
- 14. 如何獲取兩個日期之間的天數objective-c
- 15. 如何獲取兩個日期之間的天數?
- 16. Grails - 兩個日期之間的差異
- 17. VB - 兩個日期之間的差異
- 18. 兩個日期之間的差異
- 19. Javascript - 兩個日期之間的差異
- 20. 兩個表之間的日期差異
- 21. 兩個日期之間的差異
- 22. 兩個日期之間的差異python
- 23. 兩個日期之間的Ruby差異
- 24. 兩個日期()之間的JavaScript差異
- 25. 兩個日期之間的oracle差異
- 26. 兩個日期之間的差異
- 27. 兩個日期之間的差異Yii2
- 28. 在兩個日期之間的差異
- 29. 兩個Java日期之間的差異?
- 30. 兩個日期之間的Android差異?
是的,當我提出問題時,我忘記了日期格式; p 謝謝 – Audel 2010-03-22 08:18:41
P.S. YYYY-MM-DD是ISO 8601標準,所以每個人都應該使用它。非常實用。 – 2016-10-18 12:55:40
**注意**:第一個參數必須大於'datediff()'方法的第二個參數,否則它將返回負值。 – Shashanth 2017-06-30 08:41:08