ใช้ DATE_FORMAT(date, '%Y-%m-25') ตั้งค่าวันเป็น 25 คงที่ เก็บปีและเดือนเดิม
สร้างตารางตัวอย่าง
mysql> CREATE TABLE DemoTable (
-> AdmissionDate DATE
-> );
เพิ่มข้อมูลตัวอย่าง
mysql> INSERT INTO DemoTable VALUES('2019-05-12');
mysql> INSERT INTO DemoTable VALUES('2019-05-18');
mysql> INSERT INTO DemoTable VALUES('2019-04-19');
แสดงข้อมูล
mysql> SELECT * FROM DemoTable;
ผลลัพธ์:
+---------------+ | AdmissionDate | +---------------+ | 2019-05-12 | | 2019-05-18 | | 2019-04-19 | +---------------+
คำสั่งอัปเดตวันเป็น 25 ทุกแถว
mysql> UPDATE DemoTable SET AdmissionDate = DATE_FORMAT(AdmissionDate, '%Y-%m-25');
ตรวจสอบผลลัพธ์
mysql> SELECT * FROM DemoTable;
ผลลัพธ์:
+---------------+ | AdmissionDate | +---------------+ | 2019-05-25 | | 2019-05-25 | | 2019-04-25 | +---------------+
คำอธิบาย: DATE_FORMAT(date, '%Y-%m-25') สร้างสตริง 'YYYY-MM-25' จากวันที่เดิม แล้ว MySQL แปลงเป็น DATE อัตโนมัติ | ปีและเดือนคงเดิม เปลี่ยนแค่วัน