2010-10-20 15 views
10

मुझे यह जानने में दिलचस्पी है कि एक यूनियन एकाधिक प्रश्नों को चलाने से बेहतर है या नहीं।mysql संघ बनाम एकाधिक प्रश्न

यदि ऐसा है, तो क्या कई बार ऐसे प्रश्न हैं जो अन्य कारणों से तेज़ या पसंदीदा होंगे?

+1

में एक बड़ी परियोजना में एक महत्वपूर्ण परियोजना के लायक क्यों हो सकता है? – Yehosef

उत्तर

9

यदि आप यूनियन ऑल का उपयोग करते हैं और आउटपुट को सॉर्ट नहीं करते हैं, तो यूनियन का प्रदर्शन कई अलग-अलग प्रश्नों के प्रदर्शन के समान ही कम होना चाहिए, यह मानते हुए कि प्रश्न यूनियनिंग के समान हैं साथ में। यदि आप डेटा को सॉर्ट करते हैं, तो जाहिर है कि आप कुछ ओवरहेड लगा रहे हैं (हालांकि यदि आप इसे अपने एप्लिकेशन में सॉर्ट करते हैं तो शायद कम है)। यदि आप सभी कीवर्ड छोड़ देते हैं, तो MySQL आपके परिणामों को डिस्टिंट करने का अतिरिक्त कार्य करेगा। दोबारा, यह अतिरिक्त ओवरहेड लगाता है हालांकि शायद इसे स्वयं करने से कम।

0

आप पूछते हैं कि यह "बेहतर है" - मुझे लगता है कि आप "प्रदर्शन-वार" का जिक्र कर रहे हैं?

यदि गति प्रभाव न्यूनतम है, तो हो सकता है कि आप अपने कोड को और अधिक पठनीय रखने के लिए कई प्रश्नों को प्राथमिकता देना चाहें; एक संघ में, विभिन्न प्रश्नों से निपटने के बजाय, कई प्रश्नों से निपटने के बजाय।

निश्चित रूप से उपयोग के मामले पर निर्भर करता है। लेकिन पठनीय और समझने योग्य कोड के पास लंबी अवधि

+0

धन्यवाद - हाँ, मेरा मतलब है कि यह अधिक प्रदर्शनकारी है। कोड की पठनीयता वास्तव में एक चिंता नहीं है (मेरे लिए ..) क्योंकि आप प्रश्नों को अलग रख सकते हैं और फिर कोड स्तर पर उन्हें "यूनियन" वाक्यविन्यास के साथ शामिल कर सकते हैं या नहीं। – Yehosef

संबंधित मुद्दे