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

MySQL-এ FIND_IN_SET() ব্যবহার করে কমা-সেপারেটেড লিস্টে মান খুঁজে বের করা

MySQL-এ কমা-সেপারেটেড স্ট্রিং কলামে নির্দিষ্ট মান আছে কিনা চেক করতে FIND_IN_SET() ফাংশন সবচেয়ে সহজ এবং দক্ষ। রেজেক্স ব্যবহার করার দরকার নেই।

সিনট্যাক্স

SELECT * FROM yourTableName WHERE FIND_IN_SET(search_value, column_name);

টেবিল ও ডেটা

mysql> CREATE TABLE demo17 (
    -> id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> first_name VARCHAR(50),
    -> value TEXT
    -> );
mysql> INSERT INTO demo17 (first_name, value) VALUES 
('John', '50'), ('David', ''), ('Adam', '50,89'), ('Adam', '49,89,43');
mysql> SELECT * FROM demo17;
+----+------------+----------+
| id | first_name | value    |
+----+------------+----------+
| 1  | John       | 50       |
| 2  | David      |          |
| 3  | Adam       | 50,89    |
| 4  | Adam       | 49,89,43 |
+----+------------+----------+

FIND_IN_SET কোয়ারি (৫০ খুঁজুন)

mysql> SELECT * FROM demo17 WHERE FIND_IN_SET(50, value);
+----+------------+-------+
| id | first_name | value |
+----+------------+-------+
| 1  | John       | 50    |
| 3  | Adam       | 50,89 |
+----+------------+-------+

ব্যাখ্যা: FIND_IN_SET('50', '50,89') → ১ (পাওয়া গেলে পজিশন রিটার্ন করে, ০ = নেই)। এটি কমা দিয়ে আলাদা করা স্ট্রিংয়ের জন্য অপ্টিমাইজড। LIKE '%50%' ব্যবহার করলে '150'-ও ম্যাচ হয়ে যাবে (ফলস পজিটিভ)।

  1. MySQL-এ AES_ENCRYPT ও AES_DECRYPT ব্যবহার করে স্ট্রিং এনক্রিপ্ট ও ডিক্রিপ্ট করা

  2. C#-তে স্ট্রিং লিস্ট থেকে কমা-সেপারেটেড স্ট্রিং কীভাবে তৈরি করবেন?

  3. স্ট্রিং লিস্টকে কমা-সেপারেটেড স্ট্রিং-এ রূপান্তর করার জাভা প্রোগ্রাম

  4. পাইথন - স্ট্রিং ক্যারেক্টার তালিকায় আছে কিনা এবং বিপরীত ধরণে পরীক্ষা