眾所周知,CURDATE() 僅傳回日期單位,因此將時間單位的 INTERVAL 與 CURDATE() 一起使用會產生歧義。 MySQL 總是用「00:00:00」時間表示目前日期,因此當我們將時間單位的 INTERVAL 與 CURDATE() 一起使用時,這種時間算術會考慮到這個時間。以下範例將闡明它 -
mysql> Select CURDATE() + INTERVAL 0 hour; +-----------------------------+ | curdate() + Interval 0 hour | +-----------------------------+ | 2017-10-28 00:00:00 | +-----------------------------+ 1 row in set (0.00 sec) mysql> select CURDATE() + INTERVAL 1 hour; +-----------------------------+ | curdate() + Interval 1 hour | +-----------------------------+ | 2017-10-28 01:00:00 | +-----------------------------+ 1 row in set (0.00 sec) mysql> Select CURDATE() + INTERVAL 2 hour; +-----------------------------+ | CURDATE() + INTERVAL 2 hour | +-----------------------------+ | 2017-10-28 02:00:00 | +-----------------------------+ 1 row in set (0.00 sec)
以上是當我們在 CURDATE() 函數中使用時間單位的 INTERVAL 時,MySQL 會如何表現?的詳細內容。更多資訊請關注PHP中文網其他相關文章!