如何在 MySQL 中為日期新增天數?
如要為日期新增天數,你可以使用 MySQL 的 DATE_ADD() 函式。為日期新增天數的語法如下−
INSERT INTO yourTableName VALUES(DATE_ADD(now(),interval n day));
在上述語法中,你可以使用 curdate() 替換 now()。curdate() 只會儲存日期,而 now() 會儲存日期和時間。
下面是這兩個函式的演示。為了理解上述語法,我們建立一個表。
mysql> create table addingDaysDemo −> ( −> yourDateTime datetime −> ); Query OK, 0 rows affected (1.09 sec)
現在在 insert 語句中同時使用這兩個函式 now() 和 curdate(),並使用“間隔”來新增天數。為日期新增天數的查詢如下−
mysql> insert into addingDaysDemo values(date_add(now(),interval 1 day)); Query OK, 1 row affected (0.14 sec) mysql> insert into addingDaysDemo values(date_add(now(),interval 4 day)); Query OK, 1 row affected (0.17 sec) mysql> insert into addingDaysDemo values(date_add(now(),interval 5 day)); Query OK, 1 row affected (0.14 sec) mysql> insert into addingDaysDemo values(date_add(now(),interval 7 day)); Query OK, 1 row affected (0.17 sec) mysql> insert into addingDaysDemo values(date_add(now(),interval 9 day)); Query OK, 1 row affected (0.15 sec) mysql> insert into addingDaysDemo values(date_add(curdate(),interval 1 day)); Query OK, 1 row affected (0.18 sec) mysql> insert into addingDaysDemo values(date_add(curdate(),interval 4 day)); Query OK, 1 row affected (0.16 sec) mysql> insert into addingDaysDemo values(date_add(curdate(),interval 5 day)); Query OK, 1 row affected (0.17 sec) mysql> insert into addingDaysDemo values(date_add(curdate(),interval 7 day)); Query OK, 1 row affected (0.12 sec) mysql> insert into addingDaysDemo values(date_add(curdate(),interval 9 day)); Query OK, 1 row affected (0.15 sec)
使用 select 語句顯示錶中的所有記錄。查詢如下−
mysql> select *from addingDaysDemo;
輸出如下−
+---------------------+ | yourDateTime | +---------------------+ | 2018-12-14 15:36:57 | | 2018-12-17 15:37:06 | | 2018-12-18 15:37:12 | | 2018-12-20 15:37:17 | | 2018-12-22 15:37:21 | | 2018-12-14 00:00:00 | | 2018-12-17 00:00:00 | | 2018-12-18 00:00:00 | | 2018-12-20 00:00:00 | | 2018-12-22 00:00:00 | +---------------------+ 10 rows in set (0.00 sec)
廣告