MySQL का FIND_IN_SET फ़ंक्शन सूचकांकों का उपयोग न करने के लिए कुख्यात है, जिसके परिणामस्वरूप अकुशल क्वेरीज़ आती हैं। हालाँकि, अल्पविराम से अलग की गई सूचियों से निपटने के दौरान वांछित अनुक्रमण व्यवहार को प्राप्त करने के लिए वैकल्पिक दृष्टिकोण हैं।
प्रदान किए गए उत्तर में वर्णित तकनीक एक पैरामीटर के साथ तैयार कथन का उपयोग करने का सुझाव देती है अल्पविराम से अलग की गई सूची के रूप में एक स्ट्रिंग को स्वीकार करना। तैयार कथन में गैर-नल कुंजी के साथ श्रेणी प्रकार का उपयोग करके, यह सुनिश्चित करता है कि IN खंड निष्पादित करते समय सूचकांकों को नियोजित किया जाएगा।
उदाहरण के लिए, निम्नलिखित क्वेरी एक सूचकांक के साथ एक श्रेणी खोज करती है 'आईडी' कॉलम:
explain select * from ratings where id in (2331425, 430364, 4557546, 2696638, 4510549, ...)
हालांकि यह दृष्टिकोण कुशल अनुक्रमित प्रश्नों की अनुमति देता है, लेकिन यह महत्वपूर्ण है निम्न पर विचार करें सावधानियां:
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3