Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

อัปเดตวันที่ทั้งหมดในตาราง MySQL ด้วย DATE_ADD()

ใช้ UPDATE ร่วม DATE_ADD() เพื่อบวกช่วงเวลาให้ทุกแถว

ตัวอย่าง

mysql> create table DemoTable (
    ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    ClientProjectDueDate date
);
Query OK, 0 rows affected (1.19 sec)
mysql> insert into DemoTable(ClientProjectDueDate) values('2018-01-21'); Query OK, 1 row affected (0.20 sec)
mysql> insert into DemoTable(ClientProjectDueDate) values('2019-03-25'); Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable(ClientProjectDueDate) values('2013-11-01'); Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(ClientProjectDueDate) values('2015-06-14'); Query OK, 1 row affected (0.23 sec)

ข้อมูลก่อน

mysql> select * from DemoTable;
+----------+----------------------+
| ClientId | ClientProjectDueDate |
+----------+----------------------+
| 1        | 2018-01-21           |
| 2        | 2019-03-25           |
| 3        | 2013-11-01           |
| 4        | 2015-06-14           |
+----------+----------------------+

บวก 2 ปี ทุกแถว

mysql> update DemoTable set ClientProjectDueDate=date_add(ClientProjectDueDate, INTERVAL 2 YEAR);
Query OK, 4 rows affected (0.71 sec)

ผลลัพธ์

mysql> select * from DemoTable;
+----------+----------------------+
| ClientId | ClientProjectDueDate |
+----------+----------------------+
| 1        | 2020-01-21           |
| 2        | 2021-03-25           |
| 3        | 2015-11-01           |
| 4        | 2017-06-14           |
+----------+----------------------+

รองรับ INTERVAL: DAY, MONTH, YEAR, HOUR, MINUTE, SECOND และรวมกันได้