Computer >> Máy Tính >  >> Lập trình >> MySQL

Thêm 30 ngày vào một giá trị trong bảng MySQL?

Để thêm 30 ngày vào một giá trị trong bảng, bạn có thể sử dụng hàm ADDDATE () với lệnh UPDATE. Cú pháp như sau:

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

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau:

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

Chèn một số bản ghi trong bảng bằng lệnh chèn. Truy vấn như sau:

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)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select. Truy vấn như sau:

mysql> select *from Add30DayDemo;

Sau đây là kết quả:

+----+--------------+
| 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)

Đây là truy vấn để thêm giá trị 30 ngày vào bảng sử dụng DATEADD ():

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

Bây giờ hãy kiểm tra các bản ghi bảng một lần nữa. Truy vấn như sau:

mysql> select *from Add30DayDemo;

Sau đây là kết quả với ngày cập nhật:

+----+--------------+
| 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)