एक विशिष्ट फ़ील्ड में मानों की एक श्रृंखला के साथ MySQL तालिका से चयन करना
MySQL डेटाबेस के साथ काम करते समय, आपको ऐसे परिदृश्यों का सामना करना पड़ सकता है जहां आपको आवश्यकता हो किसी सरणी में संग्रहीत मानों के आधार पर डेटा पुनर्प्राप्त करना। उदाहरण के लिए, मान लें कि आपके पास $array नामक एक सरणी है जिसमें उपयोगकर्ता आईडी की एक सूची है:
$array = array(1, 40, 20, 55, 29, 48);
To उन विशिष्ट पंक्तियों का चयन करें जहां myField कॉलम इस सरणी के मानों से मेल खाता है, आप परंपरागत रूप से एक जटिल "WHERE -- OR -- OR -- OR" कथन बनाने के लिए एक लूप का उपयोग कर सकते हैं। हालाँकि, एक सरल और अधिक कुशल दृष्टिकोण है।
"IN" ऑपरेटर का उपयोग
MySQL "IN" ऑपरेटर ऐसे परिदृश्यों के लिए एक शानदार समाधान प्रदान करता है। यह आपको एक ही कथन का उपयोग करके WHERE क्लॉज में एकाधिक मान निर्दिष्ट करने की अनुमति देता है:
$sql = "SELECT * FROM `myTable` WHERE `myField` IN (" . implode(",", $array) . ")";
इस उदाहरण में, "IN" ऑपरेटर यह सुनिश्चित करता है कि क्वेरी उन पंक्तियों को पुनर्प्राप्त करती है जहां myField कॉलम $array में संग्रहीत किसी भी मान से मेल खाता है। एम्प्लोड() फ़ंक्शन का उपयोग सरणी को अल्पविराम से अलग की गई स्ट्रिंग में बदलने के लिए किया जाता है, जिसे बाद में SQL क्वेरी के अंदर संयोजित किया जाता है।
उदाहरण कार्यान्वयन
निष्पादित करने के लिए "IN" ऑपरेटर का उपयोग करके क्वेरी करें, आप इन चरणों का पालन कर सकते हैं:
"IN" ऑपरेटर का उपयोग करके, आप किसी सरणी में संग्रहीत एकाधिक मानों के आधार पर MySQL तालिका से पंक्तियों का कुशलतापूर्वक चयन कर सकता है, जिससे जटिल और धीमी लूपिंग तंत्र की आवश्यकता कम हो जाती है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3