MySQL DATE_ADD和ADDDATE函數實現向日期添加指定時間間隔

MySQL DATE_ADD(date,INTERVAL expr type) 和 ADDDATE(date,INTERVAL expr type) 兩個函數的作用相同,都是用於執行日期的加運算。

DATE_ADD() 和 ADDDATE() 函數有兩個參數:

  • date 是 DATE 或 DATETIME 的起始值。
  • INTERVAL expr type是要添加到起始日期值的間隔值。

【實例 1】使用 DATE_ADD(date,INTERVAL expr type) 函數執行日期的加運算。輸入 SQL 語句和執行結果如下。

mysql> SELECT DATE_ADD('2018-10-31 23:59:59',INTERVAL 1 SECOND) AS C1,
  -> DATE_ADD('2018-10-31 23:59:59',INTERVAL '1:1' MINUTE_SECOND) AS C2,
  -> ADDDATE('2018-10-31 23:59:59',INTERVAL 1 SECOND) AS C3;
+---------------------+---------------------+---------------------+
| C1         | C2         | C3         |
+---------------------+---------------------+---------------------+
| 2018-11-01 00:00:00 | 2018-11-01 00:01:00 | 2018-11-01 00:00:00 |
+---------------------+---------------------+---------------------+
1 row in set (0.00 sec)

由執行結果可以看出,DATE_ADD(date,INTERVAL expr type) 和 ADDDATE(date,INTERVAL expr type) 函數的功能完全相同,在原始時間 ‘2018-10-31 23:59:59’ 上加 1 秒之後結果都是 ‘2018-11-01 00:00:00’ ;在原始時間上加 1 分鐘 1 秒的寫法是表達式 ‘1:1’,最終可得結果 ‘2018-11-01 00:01:00’。

【實例 2】使用 ADDDATE() 函數執行日期的加操作,輸入的 SQL 語句和執行結果如下所示。

mysql> SELECT ADDDATE('2017-11-30 23:59:59', INTERVAL 1 SECOND) AS col1,
  -> ADDDATE('2017-11-30 23:59:59' ,INTERVAL '1:1' MINUTE_SECOND) AS col2;
+---------------------+---------------------+
| col1        | col2        |
+---------------------+---------------------+
| 2017-12-01 00:00:00 | 2017-12-01 00:01:00 |
+---------------------+---------------------+
1 row in set (0.02 sec)

由運行結果可以看到,ADDDATE(‘2017-11-30 23:59:59’,INTERVAL 1 SECOND) 函數執行的結果將時間增加 1 秒後返回,結果為“2017-12-01 00:00:00”;ADDDATE(‘2017-11-30 23:59:59’,INTERVAL’1:1’MINUTE_SECOND) 函數的日期運算類型是 MINUTE_SECOND,將指定時間增加 1 分 1 秒後返回,結果為“2017-12-01 00:01:00”。

到此這篇關於MySQL DATE_ADD和ADDDATE函數實現向日期添加指定時間間隔的文章就介紹到這瞭,更多相關MySQL 指定時間間隔內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: