FIND_IN_SET() फ़ंक्शन का उपयोग करके कॉमा से अलग स्ट्रिंग में किसी मान की खोज करें।
टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable (ListOfNumbers VARCHAR(100));
Query OK, 0 rows affected (1.24 sec)
mysql> INSERT INTO DemoTable VALUES('784,746,894,344');
mysql> INSERT INTO DemoTable VALUES('456,322,333,456');
mysql> INSERT INTO DemoTable VALUES('654,785,678,456');
mysql> INSERT INTO DemoTable VALUES('123,676,847,785');
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+-----------------+
| ListOfNumbers |
+-----------------+
| 784,746,894,344 |
| 456,322,333,456 |
| 654,785,678,456 |
| 123,676,847,785 |
+-----------------+
'456' खोजने के लिए क्वेरी
mysql> SELECT * FROM DemoTable
WHERE FIND_IN_SET('456', ListOfNumbers);
परिणाम:
+-----------------+
| ListOfNumbers |
+-----------------+
| 456,322,333,456 |
| 654,785,678,456 |
+-----------------+
2 rows in set (0.28 sec)
महत्वपूर्ण: FIND_IN_SET सटीक पूर्ण मान मिलान करता है (सीमाएं कॉमा या स्ट्रिंग प्रारंभ/अंत हैं)। यह LIKE '%456%' से अलग है जो '1456' से भी मेल खाएगा। प्रदर्शन के लिए, CSV कॉलम के बजाय उचित सामान्यीकरण (जंक्शन टेबल) पर विचार करें।