DATE_FORMAT() के साथ UPDATE का उपयोग
किसी DATE/DATETIME कॉलम का केवल वर्ष भाग बदलने के लिए DATE_FORMAT() का उपयोग करके नई तारीख बनाएं और अपडेट करें।
सिंटैक्स
UPDATE yourTableName SET yourDateColumn = DATE_FORMAT(yourDateColumn, 'newYear-%m-%d');
उदाहरण
mysql> CREATE TABLE ChangeYear (
-> id INT NOT NULL AUTO_INCREMENT, ArrivalTime DATE, PRIMARY KEY(id)
-> );
mysql> INSERT INTO ChangeYear (ArrivalTime) VALUES
-> (DATE_ADD(NOW(), INTERVAL -2 YEAR)), ('2012-10-24'), ('2016-03-21'), ('2015-04-24'), (CURDATE());
सभी वर्ष 2019 में बदलें:
mysql> UPDATE ChangeYear SET ArrivalTime = DATE_FORMAT(ArrivalTime, '2019-%m-%d');
+----+-------------+ | id | ArrivalTime | +----+-------------+ | 1 | 2019-01-07 | | 2 | 2019-10-24 | | 3 | 2019-03-21 | | 4 | 2019-04-24 | | 5 | 2019-01-07 | +----+-------------+
नोट: DATE_FORMAT एक स्ट्रिंग लौटाता है, लेकिन DATE कॉलम में असाइनमेंट पर MySQL स्वचालित रूप से कास्ट करता है। DATETIME के लिए 'YYYY-%m-%d %H:%i:%s' पैटर्न उपयोग करें।