MySQL का REPLACE() फ़ंक्शन किसी स्ट्रिंग में सभी घटनाओं को ढूंढकर नए स्ट्रिंग से बदल देता है। इसका उपयोग UPDATE के साथ करके कॉलम डेटा साफ़ कर सकते हैं।
सिंटैक्स
UPDATE टेबल_नाम SET कॉलम_नाम = REPLACE(कॉलम_नाम, 'पुराना_स्ट्रिंग', 'नया_स्ट्रिंग');
उदाहरण: '______' को 'Mike_007' से बदलें
1. टेबल बनाएं
mysql> CREATE TABLE DemoTable1574 (StudentCode VARCHAR(20));
2. डेटा डालें
mysql> INSERT INTO DemoTable1574 VALUES('111_Carol');
mysql> INSERT INTO DemoTable1574 VALUES('______');
mysql> INSERT INTO DemoTable1574 VALUES('David_12345');
mysql> INSERT INTO DemoTable1574 VALUES('______');
3. अपडेट से पहले
mysql> SELECT * FROM DemoTable1574;
+-------------+ | StudentCode | +-------------+ | 111_Carol | | ______ | | David_12345 | | ______ | +-------------+
4. REPLACE के साथ अपडेट
mysql> UPDATE DemoTable1574
-> SET StudentCode = REPLACE(StudentCode, '______', 'Mike_007');
Query OK, 2 rows affected. Rows matched: 4 Changed: 2
5. अपडेट के बाद
mysql> SELECT * FROM DemoTable1574;
+-------------+ | StudentCode | +-------------+ | 111_Carol | | Mike_007 | | David_12345 | | Mike_007 | +-------------+
REPLACE विशेषताएं
- केस-संवेदी
- सभी घटनाएं बदलता है (नहीं तो पहला)
- यदि पुराना स्ट्रिंग नहीं मिला तो कोई बदलाव नहीं
- NULL इनपुट पर NULL देता है
चयनात्मक अपडेट (WHERE के साथ)
UPDATE DemoTable1574 SET StudentCode = REPLACE(StudentCode, '______', 'Mike_007') WHERE StudentCode = '______'; -- केवल सटीक मिलान
एकाधिक प्रतिस्थापन
UPDATE DemoTable SET col = REPLACE(REPLACE(REPLACE(col, 'a', 'A'), 'b', 'B'), 'c', 'C');
नोट
REPLACE() स्ट्रिंग फ़ंक्शन है, REPLACE INTO स्टेटमेंट (INSERT ... ON DUPLICATE KEY UPDATE जैसा) से अलग।