সেশন ভেরিয়েবল ব্যবহার করে শুধু প্রথম হ্রাস পাওয়া অক্ষর রিপ্লেস করতে CONCAT() এবং REPLACE() ফাংশন কম্বাইন করতে হয়।
সেশন ভেরিয়েবল সেট করুন
mysql> SET @Sentence = 'Thks ks is a my string';
Query OK, 0 rows affected (0.00 sec)
শুধু প্রথম 'k' কে 'i' দিয়ে রিপ্লেস করুন
mysql> SELECT @Sentence AS NewString,
-> CONCAT(
-> REPLACE(LEFT(@Sentence, INSTR(@Sentence, 'k')), 'k', 'i'),
-> SUBSTRING(@Sentence, INSTR(@Sentence, 'k') + 1)
-> ) AS ChangeOnlyOneTime;
ফলাফল
+------------------------+------------------------+
| NewString | ChangeOnlyOneTime |
+------------------------+------------------------+
| Thks ks is a my string | This ks is a my string |
+------------------------+------------------------+
1 row in set (0.00 sec)
ব্যাখ্যা:
INSTR(@Sentence, 'k')- প্রথম 'k' এর পজিশন বের করে (এখানে ৩)LEFT(@Sentence, 3)- প্রথম ৩ অক্ষর নেয় ('Thk')REPLACE(..., 'k', 'i')- সেটিতে 'k' কে 'i' দিয়ে রিপ্লেস করে ('Thi')SUBSTRING(@Sentence, 4)- ৪থ পজিশন থেকে শেষ পর্যন্ত নেয় ('s ks is a my string')CONCAT()- দুটি অংশ জোড়া দিয়ে ফাইনাল স্ট্রিং বানায়
টেবিল কলামে প্রয়োগ: উপরের আর্টিকেলে (ID: 1006073107) টেবিল কলামে একই লজিক ব্যবহারের উদাহরণ দেওয়া আছে।