MySQL-এ স্ট্রিংয়ের নির্দিষ্ট ডিলিমিটার (যেমন স্ল্যাশ /) এর আগের অংশটি রেখে বাকি মুছে ফেলতে SUBSTRING_INDEX() ফাংশন ব্যবহার করা হয়।
সিনট্যাক্স
UPDATE yourTableName SET yourColumnName = SUBSTRING_INDEX(yourColumnName, 'delimiter', 1);
উদাহরণ
টেবিল তৈরি:
CREATE TABLE demo69 (name VARCHAR(40));
INSERT INTO demo69 VALUES ('John/Smith'), ('David/Miller'), ('Chris/Brown'), ('Carol/Taylor');
টেবিলের ডেটা:
+--------------+ | name | +--------------+ | John/Smith | | David/Miller | | Chris/Brown | | Carol/Taylor | +--------------+
আপডেট কোয়েরি
UPDATE demo69 SET name = SUBSTRING_INDEX(name, '/', 1);
আপডেটের পর ডেটা
+-------+ | name | +-------+ | John | | David | | Chris | | Carol | +-------+
ব্যাখ্যা:
SUBSTRING_INDEX(str, delim, count):str-এdelimখুঁজেcountনম্বর ডিলিমিটারের আগের সাবস্ট্রিং রিটার্ন করে।count = 1-> প্রথম ডিলিমিটারের আগের অংশ (স্ল্যাশের বামপাশ)।count = -1-> শেষ ডিলিমিটারের পরের অংশ (স্ল্যাশের ডানপাশ) -> 'Smith', 'Miller' ইত্যাদি।count = 2-> দ্বিতীয় ডিলিমিটারের আগের অংশ।
নোট: এটি সমস্ত রো আপডেট করে। WHERE ক্লজ যোগ করে নির্দিষ্ট রো আপডেট করা যায়।