UPDATE ... SET col = REPLACE(col, 'old', 'new') WHERE col LIKE 'old'
REPLACE() ফাংশন একটি কলামের সবগুলো আওয়ারেন্স রিপ্লেস করে। WHERE ক্লজ দিয়ে শুধু প্রাসঙ্গিক সারিগুলো আপডেট করা পারফরম্যান্সে ভালো।
নমুনা টেবিল ও ডেটা
mysql> CREATE TABLE replaceDemo (Name VARCHAR(200));
mysql> INSERT INTO replaceDemo VALUES ('John'),('Demo'),('Smith'),('Demo'),('Carol');
mysql> SELECT * FROM replaceDemo;
+-------+
| Name |
+-------+
| John |
| Demo |
| Smith |
| Demo |
| Carol |
+-------+
'Demo' কে 'Amit' দিয়ে রিপ্লেস
mysql> UPDATE replaceDemo
-> SET Name = REPLACE(Name, 'Demo', 'Amit')
-> WHERE Name LIKE 'Demo';
Query OK, 2 rows affected (0.18 sec)
ফলাফল
+-------+ | Name | +-------+ | John | | Amit | | Smith | | Amit | | Carol | +-------+
নোট: REPLACE() কেস-সেনসিটিভ। কেস-ইনসেনসিটিভ রিপ্লেসের জন্য LOWER()/UPPER() বা REGEXP_REPLACE() (MySQL 8.0+) ব্যবহার করুন।