REPLACE() फ़ंक्शन के साथ UPDATE
किसी कॉलम में विशिष्ट स्ट्रिंग को ढूंढकर बदलने के लिए REPLACE() फ़ंक्शन का उपयोग UPDATE स्टेटमेंट में करें।
सिंटैक्स
UPDATE yourTableName SET yourColumnName = REPLACE(yourColumnName, 'oldValue', 'newValue') WHERE yourCondition;
उदाहरण: टेबल और डेटा
mysql> create table findAndReplaceDemo (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> StudentFirstName varchar(20)
-> );
Query OK, 0 rows affected (0.49 sec)
mysql> insert into findAndReplaceDemo(StudentFirstName) values('Carol');
mysql> insert into findAndReplaceDemo(StudentFirstName) values('David');
mysql> insert into findAndReplaceDemo(StudentFirstName) values('Bob');
mysql> insert into findAndReplaceDemo(StudentFirstName) values('Sam');
mysql> insert into findAndReplaceDemo(StudentFirstName) values('Mike');
mysql> insert into findAndReplaceDemo(StudentFirstName) values('Maxwell');
अपडेट से पहले
+----+------------------+ | Id | StudentFirstName | +----+------------------+ | 6 | Maxwell | +----+------------------+
खोजें और बदलें: 'Maxwell' → 'Chris'
mysql> UPDATE findAndReplaceDemo
-> SET StudentFirstName = REPLACE(StudentFirstName, 'Maxwell', 'Chris')
-> WHERE StudentFirstName = 'Maxwell';
Query OK, 1 row affected (0.16 sec)
अपडेट के बाद
+----+------------------+ | Id | StudentFirstName | +----+------------------+ | 6 | Chris | +----+------------------+
महत्वपूर्ण बिंदु
REPLACE()सभी घटनाओं को बदलता है (यदि स्ट्रिंग में एकाधिक बार हो)WHEREक्लॉज केवल प्रभावित पंक्तियों तक सीमित करता है (प्रदर्शन के लिए)- केस-सेंसिटिव है (डिफ़ॉल्ट कॉलेशन के अनुसार)
- बड़े टेबल पर इंडेक्स के साथ WHERE उपयोग करें
SELECT में उपयोग (केवल देखें)
SELECT REPLACE(column, 'old', 'new') FROM table;