MySQL में एक FIELD()
शामिल है फ़ंक्शन और एक FIND_IN_SET()
फ़ंक्शन जो दोनों एक सूची के भीतर एक स्ट्रिंग की स्थिति लौटाते हैं। हालांकि, ये फ़ंक्शन एक-दूसरे से थोड़े अलग तरीके से काम करते हैं।
इन दो कार्यों के बीच मुख्य अंतर यह है:
FIND_IN_SET()
एक स्ट्रिंग सूची के भीतर एक स्ट्रिंग की अनुक्रमणिका स्थिति देता है।FIELD()
तर्कों की सूची में एक स्ट्रिंग की अनुक्रमणिका स्थिति देता है।
तो एक फ़ंक्शन स्ट्रिंग सूची की खोज करता है , और दूसरा फ़ंक्शन तर्कों की सूची . की खोज करता है ।
सिंटैक्स
आइए पहले दो कार्यों के सिंटैक्स को देखें:
FIELD()
FIELD()
. के लिए सिंटैक्स फ़ंक्शन इस प्रकार है:
FIELD(str,str1,str2,str3,...)
इसमें एक प्रारंभिक तर्क होता है, जिसके बाद कई बाद के तर्क होते हैं। बाद के तर्क वे हैं जो खोजे जाते हैं - हालांकि उनमें से कई हैं।
FIND_IN_SET()
FIND_IN_SET()
. के लिए सिंटैक्स फ़ंक्शन इस प्रकार है:
FIND_IN_SET(str,strlist)
इसमें एक प्रारंभिक तर्क होता है, उसके बाद एक और तर्क होता है। दूसरे तर्क में खोजे जाने वाले स्ट्रिंग्स की एक सूची है।
उदाहरण
FIELD()
यहां FIELD()
का एक उदाहरण दिया गया है कार्रवाई में कार्य:
SELECT FIELD('horse', 'Cat','Dog','Horse') AS 'Result';
परिणाम:
+--------+ | Result | +--------+ | 3 | +--------+
FIND_IN_SET()
और यहां बताया गया है कि कैसे FIND_IN_SET()
समान परिणाम प्राप्त करने के लिए फ़ंक्शन का निर्माण किया जाएगा:
SELECT FIND_IN_SET('horse', 'Cat,Dog,Horse') AS 'Result';
परिणाम:
+--------+ | Result | +--------+ | 3 | +--------+