Cập nhật hàng dựa trên điều kiện so sánh cột kiểu DATE.
Tạo bảng và dữ liệu
mysql> CREATE TABLE DemoTable(
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name VARCHAR(100),
AdmissionDate DATE
);
Query OK, 0 rows affected (0.42 sec)
mysql> INSERT INTO DemoTable(Name, AdmissionDate) VALUES
('Chris','2019-11-21'), ('Mike','2019-03-11'),
('Sam','2018-04-01'), ('Carol','2019-05-01');
Query OK, 4 rows affected
Cập nhật hàng Id=3 (ngày 2018-04-01 → 2019-04-01, tên thành Robert)
mysql> UPDATE DemoTable SET Name = 'Robert', AdmissionDate = '2019-04-01' WHERE Id = 3; Query OK, 1 row affected (0.14 sec)
Kết quả:
+----+--------+---------------+ | Id | Name | AdmissionDate | +----+--------+---------------+ | 1 | Chris | 2019-11-21 | | 2 | Mike | 2019-03-11 | | 3 | Robert | 2019-04-01 | | 4 | Carol | 2019-05-01 | +----+--------+---------------+
Mở rộng - cập nhật dựa trên điều kiện DATE:
-- Cập nhật tất cả hàng có AdmissionDate trước 2019-05-01 UPDATE DemoTable SET Name = 'Updated' WHERE AdmissionDate < '2019-05-01';
Lưu ý: Luôn dùng định dạng 'YYYY-MM-DD' cho literal DATE trong SQL.