在 MySQL 表格中為某個值增加 30 天?


若要向表中的值中新增 30 天,可以透過結合 ADDDATE() 函式和 UPDATE 命令來實現。語法如下

UPDATE yourTableName
SET yourDateColumnName=ADDDATE(yourDateColumnName,INTERVAL 30 DAY);

為了理解上述語法,我們建立一個表。建立表的查詢如下

mysql> create table Add30DayDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> ShippingDate date,
   -> PRIMARY KEY(ID)
   -> );
Query OK, 0 rows affected (0.76 sec)

透過插入命令在表中插入一些記錄。查詢如下

mysql> insert into Add30DayDemo(ShippingDate) values('2019-02-04');
Query OK, 1 row affected (0.20 sec)
mysql> insert into Add30DayDemo(ShippingDate) values('2018-11-15');
Query OK, 1 row affected (0.18 sec)
mysql> insert into Add30DayDemo(ShippingDate) values('2013-05-18');
Query OK, 1 row affected (0.15 sec)
mysql> insert into Add30DayDemo(ShippingDate) values('2017-08-25');
Query OK, 1 row affected (0.20 sec)
mysql> insert into Add30DayDemo(ShippingDate) values('2016-03-01');
Query OK, 1 row affected (0.12 sec)
mysql> insert into Add30DayDemo(ShippingDate) values('2015-09-03');
Query OK, 1 row affected (0.13 sec)

使用 select 語句顯示錶中的所有記錄。查詢如下

mysql> select *from Add30DayDemo;

輸出如下

+----+--------------+
| Id | ShippingDate |
+----+--------------+
|  1 | 2019-02-04   |
|  2 | 2018-11-15   |
|  3 | 2013-05-18   |
|  4 | 2017-08-25   |
|  5 | 2016-03-01   |
|  6 | 2015-09-03   |
+----+--------------+
6 rows in set (0.00 sec)

以下是使用 DATEADD() 將 30 天值新增到表中的查詢

mysql> update Add30DayDemo
   -> SET ShippingDate=ADDDATE(ShippingDate,INTERVAL 30 DAY);
Query OK, 6 rows affected (0.44 sec)
Rows matched: 6 Changed: 6 Warnings: 0

現在再次檢查表記錄。查詢如下

mysql> select *from Add30DayDemo;

以下是具有更新日期的輸出

+----+--------------+
| Id | ShippingDate |
+----+--------------+
|  1 | 2019-03-06   |
|  2 | 2018-12-15   |
|  3 | 2013-06-17   |
|  4 | 2017-09-24   |
|  5 | 2016-03-31   |
|  6 | 2015-10-03   |
+----+--------------+
6 rows in set (0.00 sec)

更新於: 2019 年 7 月 30 日

567 瀏覽量

開啟你的職業生涯

完成該課程以獲取認證

開始
廣告