Hàm DATEDIFF() cũng hoạt động với giá trị datetime nhưng nó bỏ qua phần giờ. Dù có truyền giờ, MySQL chỉ tính chênh lệch ngày.
mysql> SELECT DATEDIFF('2018-10-22 04:05:36', '2017-10-22 03:05:45');
+-------------------------------------------------------+
| DATEDIFF('2018-10-22 04:05:36', '2017-10-22 03:05:45') |
+-------------------------------------------------------+
| 365 |
+-------------------------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATEDIFF('2017-10-22 04:05:36', '2017-10-22 03:05:45');
+-------------------------------------------------------+
| DATEDIFF('2017-10-22 04:05:36', '2017-10-22 03:05:45') |
+-------------------------------------------------------+
| 0 |
+-------------------------------------------------------+
1 row in set (0.00 sec)
Hai datetime cùng ngày (22/10/2017) cho kết quả 0 dù giờ khác nhau.