當使用帶 CURDATE() 函式的時間單位 INTERVAL 時,MySQL 的行為如何?


正如我們所知,CURDATE() 僅返回日期單位,因此使用 CURDATE() 和 INTERVAL 的時間單位是模稜兩可的。MySQL 始終使用 '00:00:00' 時間表示當前日期,因此當我們對 CURDATE() 使用 INTERVAL 時間單位時,這種時間算術會考慮此時間。以下示例將闡明這一點 -

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)

更新於: 2020 年 1 月 28 日

82 次瀏覽

開啟你的 職業生涯

完成課程以獲得認證

瞭解詳情
廣告
© . All rights reserved.