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

MySQL-এ কমা-বিচ্ছিন্ন স্ট্রিং থেকে নির্দিষ্ট মান সার্চ এবং রিপ্লেস করুন

MySQL-এ একক কলামে কমা-বিচ্ছিন্ন মান থাকলে, নির্দিষ্ট মান খুঁজে সেটি রিপ্লেস করতে SUBSTRING_INDEX() এবং CONCAT() ফাংশন কম্বাইন করে ব্যবহার করা হয়।

উদাহরণ

১. টেবিল তৈরি করুন

mysql> CREATE TABLE DemoTable (
    -> ListOfName TEXT
    -> );

২. কমা-বিচ্ছিন্ন নামের তালিকা ইনসার্ট করুন

mysql> INSERT INTO DemoTable VALUES('Carol,Sam,John,David,Bob,Mike,Robert,John,Chris,James,Jace');

৩. রেকর্ড দেখুন

mysql> SELECT * FROM DemoTable;

আউটপুট:

+------------------------------------------------------------+
| ListOfName                                                 |
+------------------------------------------------------------+
| Carol,Sam,John,David,Bob,Mike,Robert,John,Chris,James,Jace |
+------------------------------------------------------------+

৪. দ্বিতীয় 'John' কে 'Adam' দিয়ে রিপ্লেস করুন

mysql> UPDATE DemoTable
    -> SET ListOfName = CONCAT(
    ->     SUBSTRING_INDEX(ListOfName, 'John', 2),
    ->     'Adam',
    ->     SUBSTRING_INDEX(ListOfName, 'John', -1)
    -> );

৫. আপডেট হওয়া রেকর্ড দেখুন

mysql> SELECT * FROM DemoTable;

আউটপুট:

+------------------------------------------------------------+
| ListOfName                                                 |
+------------------------------------------------------------+
| Carol,Sam,John,David,Bob,Mike,Robert,Adam,Chris,James,Jace |
+------------------------------------------------------------+

ব্যাখ্যা:

  • SUBSTRING_INDEX(str, delim, count): count পজিটিভ হলে বাম পাশ, নেগেটিভ হলে ডান পাশের অংশ রিটার্ন করে।
  • SUBSTRING_INDEX(ListOfName, 'John', 2) - দ্বিতীয় 'John' পর্যন্ত (সহ) বাম অংশ।
  • SUBSTRING_INDEX(ListOfName, 'John', -1) - শেষ 'John' এর পরের ডান অংশ।
  • দুটি অংশের মাঝপথে 'Adam' কনক্যাট করা হয়েছে।

সতর্কতা: এই পদ্ধতি নির্দিষ্ট অকার্ডেন্সের জন্য কাজ করে। জেনারিক রিপ্লেসমেন্টের জন্য REPLACE() ফাংশন ব্যবহার করুন।

  1. MySQL-এ একটি টেবিল থেকে অন্য টেবিলে সকল রেকর্ড কপি করা (CREATE TABLE AS SELECT)

  2. MySQL-এ WHERE ক্লজে AND ব্যবহার করে নির্দিষ্ট রেকর্ড ডিলিট করা

  3. MySQL-এ ডোমেইন ভিত্তিক সার্চ ভলিউম বিশ্লেষণ (GROUP BY + ORDER BY)

  4. MySQL-এ URL রেকর্ডের অংশ খুঁজে বদলানো (Find & Replace)