কম্পিউটার

MySQL SUBSTRING_INDEX() ফাংশন ব্যবহার করে আমরা কীভাবে নামের স্ট্রিংটিকে তিনটি ভাগে ভাগ করতে পারি?


এটি বোঝার জন্য, আমরা 'customerdetail' নামের একটি টেবিল থেকে নিম্নলিখিত ডেটা ব্যবহার করছি৷

mysql> Select * from Customerdetail;
+----------------------+----------------------+----------+---------------------+
| Name                 | FName                | Address  | Emailid             |
+----------------------+----------------------+----------+---------------------+
| Advik Jhamb          | Lovkesh Jhamb        | Mumbai   | Advik@gmail.com     |
| Chirag Jai Patil     | Raman Jai Patil      | Gujrat   | chirahp@yahoo.com   |
| Devansh Singh Rajput | Kishore Singh Rajput | Rajastan | Devansh@Hotmail.com |
| Mitul Kumar Sharma   | Om Veer Sharma       | Patiala  | Mitul@gmail.com     |
+----------------------+----------------------+----------+---------------------+
4 rows in set (0.00 sec)

এখন, ধরুন আমরা যদি নামটিকে তিনটি ভাগে বিভক্ত করতে চাই, 'প্রথম_নাম', মধ্য_নাম এবং 'শেষ_নাম' তাহলে এটি নিম্নলিখিত প্রশ্নের সাহায্যে করা যেতে পারে -

mysql> SELECT Name, SUBSTRING_INDEX(SUBSTRING_INDEX(Name, ' ', 1), ' ', -1) AS First_Name, If( length(Name) - length(replace(Name, ' ', ''))>1, SUBSTRING_INDEX(SUBSTRING_INDEX(Name, ' ', 2), ' ', -1) ,NULL)AS Middle_Name, SUBSTRING_INDEX(SUBSTRING_INDEX(Name, ' ', 3), ' ', -1) AS Last_Name, Address FROM customerdetail;
+----------------------+------------+-------------+-----------+----------+
| Name                 | First_Name | Middle_Name | Last_Name | Address  |
+----------------------+------------+-------------+-----------+----------+
| Advik Jhamb          | Advik      | NULL        | Jhamb     | Mumbai   |
| Chirag Jai Patil     | Chirag     | Jai         | Patil     | Gujrat   |
| Devansh Singh Rajput | Devansh    | Singh       | Rajput    | Rajastan |
| Mitul Kumar Sharma   | Mitul      | Kumar       | Sharma    | Patiala  |
+----------------------+------------+-------------+-----------+----------+
4 rows in set (0.00 sec)

উপরের প্রশ্নের ফলাফলের সেট থেকে এটা স্পষ্ট যে নামটিকে তিনটি ভাগে ভাগ করা হয়েছে। এটি মধ্যবর্তী নামটিকে NULL হিসাবে বিবেচনা করে যদি নামের মধ্যবর্তী নাম না থাকে৷


  1. MySQL IN() ফাংশন ব্যবহার করে কলামের নামের সাথে তুলনা করার ভিত্তিতে আমি কীভাবে আউটপুট পেতে পারি?

  2. কিভাবে আমরা ডাটাবেস থেকে একটি MySQL সঞ্চিত ফাংশন মুছে ফেলতে পারি?

  3. কিভাবে SUBSTRING_INDEX ব্যবহার করে MySQL-এ স্ট্রিং বিভক্ত করবেন?

  4. মাইএসকিউএল ব্যবহার করে কীভাবে স্ট্রিংয়ের একটি অংশ (@ এর পরে ডোমেন নাম) প্রতিস্থাপন করবেন?