কম্পিউটার টিউটোরিয়াল

MySQL REPLACE() ফাংশন ব্যবহার করে একাধিক রেকর্ডে স্ট্রিং রিপ্লেস করা

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+) ব্যবহার করুন।

  1. MySQL-এ LIKE CONCAT() ব্যবহার করে ডাইনামিক প্যাটার্ন ম্যাচিং

  2. MySQL কোয়ারীতে 'Empty set' প্রতিস্থাপন করা

  3. MySQL-এ একাধিক কলাম একসাথে আপডেট করা (সিঙ্গল কুয়েরি)

  4. MySQL-এ একক INSERT স্টেটমেন্টে একাধিক রো দ্রুত ইনসার্ট করা