यह जांचने के लिए कि क्या मान अल्पविराम से अलग की गई सूची में मौजूद है, आप FIND_IN_SET() फ़ंक्शन का उपयोग कर सकते हैं।
वाक्य रचना इस प्रकार है
चुनें *अपने Tablename से FIND_IN_SET(‘yourValue’,yourColumnName)> 0;
आइए पहले एक टेबल बनाएं। तालिका बनाने की क्वेरी इस प्रकार है
mysql> तालिका बनाएं मौजूद हैंCommaSeparatedList -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> Name varchar(200) -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.68 सेकंड)
अब आप इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड्स इन्सर्ट कर सकते हैं।
क्वेरी इस प्रकार है
mysql> मौजूद में सम्मिलित करेंCommaSeparatedList(Name) मान ('जॉन, कैरल, सैम, लैरी, बॉब, डेविड'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.35 सेकंड) mysql> मौजूद में डालेंCommaSeparatedList(Name) मान ('मैक्सवेल') ,क्रिस,जेम्स');क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड)mysql> मौजूद में सम्मिलित करेंCommaSeparatedList(Name) मान ('रॉबर्ट, रामित'); क्वेरी ठीक, 1 पंक्ति प्रभावित (0.34 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें।
क्वेरी इस प्रकार है
mysql>मौजूदइनकोमासेपरेटेडलिस्ट से *चुनें;
निम्न आउटपुट है
<पूर्व>+----+--------------------------------+| आईडी | नाम |+----+--------------------------------+| 1 | जॉन, कैरल, सैम, लैरी, बॉब, डेविड || 2 | मैक्सवेल, क्रिस, जेम्स || 3 | रॉबर्ट, रामित |+----+-------------------------------------+3 पंक्तियाँ सेट में (0.00 सेकंड )अल्पविराम से अलग की गई सूची में मान मौजूद है या नहीं, यह जांचने के लिए यहां क्वेरी है। हम कॉमा से अलग किए गए टेक्स्ट "रॉबर्ट" के साथ फ़ील्ड की जांच कर रहे हैं
mysql> चुनें *मौजूद से इनकॉमासेपरेटेड लिस्ट जहां FIND_IN_SET('Robert',Name)> 0;
निम्न आउटपुट है
<पूर्व>+----+--------------+| आईडी | नाम |+----+--------------+| 3 | रॉबर्ट, रामित |+-----+--------------+1 पंक्ति में सेट (0.00 सेकंड)