เมื่อต้องการแก้ไขค่าคอลัมน์ชนิด DATE (หรือ DATETIME) โดยบวก/ลบช่วงเวลา ใช้ฟังก์ชัน DATE_ADD() หรือ DATE_SUB() ร่วมกับ INTERVAL
ตัวอย่างการใช้งาน
สร้างตารางวันที่เข้าทำงาน:
mysql> CREATE TABLE DemoTable1451 (JoiningDate DATE);
เพิ่มข้อมูล:
mysql> INSERT INTO DemoTable1451 VALUES ('2019-07-21'), ('2018-01-31'), ('2017-06-01');
ดูข้อมูลก่อนอัปเดต:
mysql> SELECT * FROM DemoTable1451; +-------------+ | JoiningDate | +-------------+ | 2019-07-21 | | 2018-01-31 | | 2017-06-01 | +-------------+
อัปเดต: เพิ่ม 1 ปี ทุกแถว:
mysql> UPDATE DemoTable1451
-> SET JoiningDate = DATE_ADD(JoiningDate, INTERVAL 1 YEAR);
ผลลัพธ์:
mysql> SELECT * FROM DemoTable1451; +-------------+ | JoiningDate | +-------------+ | 2020-07-21 | | 2019-01-31 | | 2018-06-01 | +-------------+
รูปแบบ INTERVAL ที่ใช้บ่อย
| หน่วย | ตัวอย่าง | คำอธิบาย |
|---|---|---|
| DAY | INTERVAL 7 DAY | บวก 7 วัน |
| MONTH | INTERVAL 3 MONTH | บวก 3 เดือน |
| YEAR | INTERVAL 1 YEAR | บวก 1 ปี |
| HOUR/MINUTE/SECOND | INTERVAL 2 HOUR | สำหรับ DATETIME/TIMESTAMP |
| COMBINED | INTERVAL '1 12' DAY_HOUR | 1 วัน 12 ชั่วโมง |