SQL में Group By और Order के बीच अंतर
विषय
SQL क्वेरी द्वारा प्राप्त डेटा को व्यवस्थित करने की अनुमति देता है। हमारे पास समूह से और समूह द्वारा आदेश के अनुसार प्राप्त क्वेरी से प्राप्त डेटा को व्यवस्थित करने के लिए दो खंड हैं। वह बिंदु जो समूह के आधार पर और क्रम से भिन्न होता है, वह है समूह द्वारा क्लॉज का उपयोग तब किया जाता है जब हम एक से अधिक टुपल्स के समुच्चय को लागू करना चाहते हैं और द्वारा आदेश खंड का उपयोग तब किया जाता है जब हम क्वेरी द्वारा प्राप्त डेटा को सॉर्ट करना चाहते हैं। हमें नीचे दिखाए गए तुलना चार्ट की सहायता से ग्रुप बाय क्लॉज और ऑर्डर बाय क्लॉज के बीच कुछ अंतर पर चर्चा करें।
- तुलना चार्ट
- परिभाषा
- मुख्य अंतर
- निष्कर्ष
तुलना चार्ट
तुलना के लिए आधार | समूह द्वारा | द्वारा आदेश |
---|---|---|
बुनियादी | ग्रुप बाय का उपयोग टुपल्स के समूह के समूह को बनाने के लिए किया जाता है। | क्रमबद्ध रूप में क्वेरी के परिणामस्वरूप प्राप्त डेटा को व्यवस्थित करने के लिए ऑर्डर बाय का उपयोग किया जाता है। |
गुण | एग्रीगेट फंक्शन के तहत अट्रैक्शन ग्रुप बाय क्लॉज में नहीं हो सकता। | एग्रीगेट के तहत अट्रैक्शन ऑर्डर बाय क्लॉज में हो सकता है। |
भूमि | विशेषता मूल्यों के बीच समानता की जमीन पर किया। | आरोही क्रम और अवरोही क्रम की भूमि पर संपन्न हुआ। |
खण्ड द्वारा समूह की परिभाषा
टॉगल के एकल सेट में एवीग, मिन, मैक्स, सम, काउंट जैसे एग्रीगेट फ़ंक्शंस लागू होते हैं। मामले में, यदि आप समूह के कार्यों को टुपल्स के समूह में लागू करना चाहते हैं तो हमारे पास इसके लिए खंड द्वारा समूह है। क्लॉज समूह द्वारा समूह को एक ही विशेषता मान वाले टुपल्स को समूह में रखा जाता है।
एक बात है याद है समूह के बारे में खंड द्वारा, सुनिश्चित करें कि गुण के नीचे समूह द्वारा खंड में दिखाई देना चाहिए चुनते हैं खंड लेकिन नहीं के तहत एक कुल समारोह। यदि ग्रुप बाय क्लॉज में एक विशेषता है जो सेलेक्ट क्लॉज के तहत नहीं है या यदि यह सेलेक्ट क्लॉज के तहत है लेकिन एग्रीगेट फंक्शन के तहत है तो क्वेरी गलत हो जाती है। इसलिए, हम कह सकते हैं कि ग्रुप बाय क्लॉज का उपयोग हमेशा सेलेक्ट क्लॉज के सहयोग से किया जाता है।
ग्रुप बाय क्लॉज को समझने के लिए एक उदाहरण लेते हैं।
विभाग समूह द्वारा शिक्षक समूह से avg_salary के रूप में विभाग _ID, avg (वेतन) का चयन करें। आप देख सकते हैं कि शुरू में एक मध्यवर्ती परिणाम बनता है जिसने विभागों को समूहीकृत किया है।इसके बाद, प्रत्येक समूह के विभागों के लिए समुच्चय समारोह avg को लागू किया जाता है, और परिणाम नीचे दिखाया गया है।
खंड द्वारा आदेश की परिभाषा
क्रम द्वारा खंड क्रमबद्ध क्रम में एक क्वेरी द्वारा प्राप्त डेटा प्रदर्शित करने के लिए उपयोग किया जाता है। ग्रुप बाय क्लॉज की तरह, ऑर्डर बाई क्लॉज का भी चयन खंड के सहयोग से किया जाता है। यदि आप सॉर्टिंग ऑर्डर का उल्लेख नहीं करते हैं, तो ऑर्डर बाय क्लॉज डेटा को आरोही क्रम में क्रमबद्ध करता है। आप के रूप में आरोही क्रम निर्दिष्ट कर सकते हैं एएससी और अवरोही क्रम desc.
आइए निम्न उदाहरण की सहायता से ऑर्डर बाय क्लॉज के कार्य को समझें। हमारे पास एक शिक्षक तालिका है, और मैं शिक्षक तालिका के दो कॉलम Department_Id और वेतन को छाँटूँगा।
विभाग_आईडी का चयन करें, शिक्षक आदेश से वेतन विभाग_आयदि एससी, वेतन अवरोही। आप देख सकते हैं कि पहले, यह आरोही क्रम में विभाग _ID की व्यवस्था करता है और फिर अवरोही क्रम में उसी विभाग में वेतन की व्यवस्था करता है।- समूह खंड एक समूह में संबंध के समूह का चयन करता है जो चयन खंड के अंतर्गत आता है। दूसरी ओर, ऑर्डर बाय क्लॉज आरोही या अवरोही क्रम में क्वेरी के परिणाम को क्रमबद्ध करता है।
- एग्रीगेट फंक्शन के तहत एट्रिब्यूट ग्रुप बाय क्लॉज के तहत नहीं हो सकता है, जबकि एग्रीगेट फंक्शन के तहत एट्रिब्यूट ऑर्डर बाय क्लॉज के तहत हो सकता है।
- टुपल्स का समूहन टुपल्स के विशेषता मानों के बीच समानता के आधार पर किया जाता है। दूसरी ओर, आरोही क्रम या अवरोही क्रम के आधार पर क्रमबद्ध या छँटाई की जाती है।
निष्कर्ष:
यदि आप टुपल्स के सेट का समूह बनाना चाहते हैं, तो आपको ग्रुप बाय क्लॉज़ का उपयोग करना होगा। यदि आप एकल कॉलम या, आरोही या अवरोही क्रम में टुपल्स के सेट में एक से अधिक कॉलम के डेटा को व्यवस्थित करना चाहते हैं तो ऑर्डर बाय क्लॉज का उपयोग करना होगा।