ใช้ DATE_ADD(date, INTERVAL n UNIT) หรือ date + INTERVAL n UNIT บวก/ลบ วันที่
mysql> CREATE TABLE DemoTable (
-> DueDate DATE
-> );
Query OK, 0 rows affected (2.11 sec)
mysql> INSERT INTO DemoTable VALUES('2019-01-21');
Query OK, 1 row affected (0.13 sec)
mysql> INSERT INTO DemoTable VALUES('2018-12-31');
Query OK, 1 row affected (0.47 sec)
mysql> INSERT INTO DemoTable VALUES('2018-12-30');
Query OK, 1 row affected (0.28 sec)
mysql> INSERT INTO DemoTable VALUES('2017-02-26');
Query OK, 1 row affected (0.47 sec)
mysql> SELECT * FROM DemoTable;
+------------+ | DueDate | +------------+ | 2019-01-21 | | 2018-12-31 | | 2018-12-30 | | 2017-02-26 | +------------+ 4 rows in set (0.00 sec)
อัปเดตบวก 1 วัน:
mysql> UPDATE DemoTable SET DueDate = DATE_ADD(DueDate, INTERVAL 1 DAY); Query OK, 4 rows affected (0.21 sec)
mysql> SELECT * FROM DemoTable;
+------------+ | DueDate | +------------+ | 2019-01-22 | | 2019-01-01 | | 2018-12-31 | | 2017-02-27 | +------------+ 4 rows in set (0.00 sec)
รูปแบบอื่น: DueDate = DueDate + INTERVAL 1 DAY (Short syntax) รองรับ DAY, MONTH, YEAR, HOUR, MINUTE, SECOND