sql - Simple SELECT/WHERE query slow. Should I index a BIT field? -
इस सवाल का पहले से ही एक उत्तर है: < / P>
-
SELECT * चलाने के लिए 25 सेकेंड्स कहाँ है IsPaperback = 1जहां
IsBundleहै एकBIT फ़ील्ड इसमें लगभग 500k पंक्तियाँ हैं, और वर्तमान में इस फील्ड सेट के बारे में लगभग 400k है।मेरे पास
बीआईटीफ़ील्ड जिसेIsBundleनाम दिया गया है और केवल 900 अभिलेखों का यह सेट है फिर, निष्पादन का समय लगभग 20-25 सेकंड है।मैं इस तरह की एक साधारण क्वेरी कैसे बढ़ा सकता हूं?
एक बिट कॉलम को इंडेक्सिंग के परिणाम दो भागों में होंगे, सही और गलत। यदि डेटा 50/50 का विभाजन हो तो लाभ 'कुछ' होगा जब यह 90/10 होता है और आप 10 हिस्सा पूछते हैं, तो यह कोई फर्क पड़ेगा।
आपको पहले अपने परिणाम सेट कॉलम के आधार पर कम करना चाहिए। फिर, अगर आप देखते हैं कि आपको कुछ स्तंभों की ज़रूरत है, और आप इस क्वेरी को बहुत निष्पादित करते हैं, तो आप सूचकांक में उन कुछ फ़ील्ड को भी शामिल कर सकते हैं। तब तालिका में खुद को लुकअप की कोई आवश्यकता नहीं है।
Comments
Post a Comment