PostgreSQL संघ, संघ सभी उदाहरण सहित
एचएमबी क्या है? PostgreSQL संघ?
RSI PostgreSQL UNION ऑपरेटर का उपयोग एक से अधिक SELECT कथनों के परिणाम सेटों को एक परिणाम सेट में संयोजित करने के लिए किया जाता है। SELECT कथनों के परिणामों से कोई भी डुप्लिकेट पंक्तियाँ हटा दी जाती हैं। UNION ऑपरेटर दो स्थितियों में काम करता है:
- SELECT क्वेरीज़ को समान संख्या में क्वेरीज़ लौटानी होंगी।
- सभी संगत कॉलमों के डेटा प्रकार संगत होने चाहिए।
UNION ऑपरेटर का उपयोग सामान्यतः उन संबंधित तालिकाओं से डेटा को संयोजित करने के लिए किया जाता है जिन्हें पूरी तरह से सामान्यीकृत नहीं किया गया है।
वाक्य - विन्यास
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
उपरोक्त मापदंडों के लिए स्पष्टीकरण इस प्रकार है:
अभिव्यक्ति_1, अभिव्यक्ति_2, ... अभिव्यक्ति_एन वे गणनाएं या कॉलम हैं जिन्हें आपको पुनर्प्राप्त करने की आवश्यकता है।
ये तालिकाएं वे तालिकाएं हैं जिनसे आपको रिकॉर्ड प्राप्त करने की आवश्यकता होती है।
WHERE शर्तें वे शर्तें हैं जिन्हें रिकॉर्ड पुनः प्राप्त करने के लिए पूरा किया जाना चाहिए।
ध्यान दें: चूंकि UNION ऑपरेटर डुप्लिकेट नहीं लौटाता है, इसलिए UNION DISTINCT के उपयोग का परिणामों पर कोई प्रभाव नहीं पड़ेगा।
PostgreSQL संघ
UNION ऑपरेटर डुप्लिकेट को हटाता है। आइए हम इसे प्रदर्शित करें।
हमारे पास डेमो नाम का एक डेटाबेस है जिसमें निम्नलिखित तालिकाएं हैं:
किताब:
मूल्य:
आइये निम्नलिखित कमांड चलायें:
SELECT id FROM Book UNION SELECT id FROM Price;
यह आदेश निम्नलिखित परिणाम देगा:
आईडी कॉलम बुक और प्राइस दोनों टेबल में दिखाई देता है। हालाँकि, यह परिणाम में केवल एक बार दिखाई देता है। इसका कारण यह है कि PostgreSQL UNION ऑपरेटर डुप्लिकेट नहीं लौटाता.
PostgreSQL संघ सभी
यह ऑपरेटर डुप्लिकेट को हटाए बिना एक से अधिक SELECT कथन से परिणाम सेट को जोड़ता है। ऑपरेटर को प्रत्येक SELECT कथन के लिए समान डेटा प्रकारों के परिणाम सेट में समान संख्या में फ़ील्ड की आवश्यकता होती है।
सिंटेक्स:
SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)] UNION ALL SELECT expression_1, expression_2, ... expression_n FROM tables [WHERE condition(s)];
उपरोक्त मापदंडों के लिए स्पष्टीकरण इस प्रकार है:
अभिव्यक्ति_1, अभिव्यक्ति_2, ... अभिव्यक्ति_एन वे गणनाएं या कॉलम हैं जिन्हें आपको पुनर्प्राप्त करने की आवश्यकता है।
ये तालिकाएं वे तालिकाएं हैं जिनसे आपको रिकॉर्ड प्राप्त करने की आवश्यकता होती है।
WHERE शर्तें वे शर्तें हैं जिन्हें रिकॉर्ड पुनः प्राप्त करने के लिए पूरा किया जाना चाहिए।
नोट: दोनों अभिव्यक्तियों की संख्या बराबर होनी चाहिए।
हम निम्नलिखित तालिकाओं का उपयोग करेंगे:
किताब:
मूल्य:
निम्न कमांड चलाएं:
SELECT id FROM Book UNION ALL SELECT id FROM price;
इसे निम्नलिखित लौटना चाहिए:
डुप्लिकेट को हटाया नहीं गया है.
द्वारा आदेश
RSI PostgreSQL UNION ऑपरेटर का उपयोग ORDER BY क्लॉज के साथ क्वेरी परिणामों को क्रमबद्ध करने के लिए किया जा सकता है। इसे प्रदर्शित करने के लिए, हम निम्नलिखित तालिकाओं का उपयोग करेंगे:
मूल्य:
मूल्य2:
यहां वह कमांड दी गई है जो यह प्रदर्शित करती है कि ORDER BY क्लॉज के साथ UNION ऑपरेटर का उपयोग कैसे किया जाता है:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price;
यह आदेश निम्नलिखित परिणाम देगा:
रिकॉर्ड्स को मूल्य कॉलम के अनुसार क्रमबद्ध किया गया था। क्लॉज डिफ़ॉल्ट रूप से रिकॉर्ड्स को आरोही क्रम में क्रमबद्ध करता है। उन्हें अवरोही क्रम में क्रमबद्ध करने के लिए, नीचे दिखाए अनुसार DESC क्लॉज जोड़ें:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
यह आदेश निम्नलिखित परिणाम देगा:
रिकॉर्ड्स को मूल्य कॉलम के आधार पर अवरोही क्रम में व्यवस्थित किया गया है।
यूनियन का प्रयोग कब करें और यूनियन ऑल का प्रयोग कब करें?
जब आपके पास समान संरचना वाली कई टेबल हों, लेकिन किसी कारण से विभाजित हों, तो UNION ऑपरेटर का उपयोग करें। जब आपको डुप्लिकेट रिकॉर्ड हटाने/हटाने की आवश्यकता हो, तो यह अच्छा है।
जब आपको डुप्लिकेट रिकॉर्ड हटाने/समाप्त करने की आवश्यकता न हो तो UNION ALL ऑपरेटर का उपयोग करें।
pgAdmin का उपयोग करना
अब आइए देखें कि pgAdmin का उपयोग करके सभी तीन क्रियाएं कैसे निष्पादित की गईं।
इसका उपयोग कैसे करें PostgreSQL pgAdmin का उपयोग करके यूनियन
इसका उपयोग कैसे करें, इसकी चरण दर चरण प्रक्रिया निम्नलिखित है PostgreSQL pgAdmin का उपयोग करके यूनियन
pgAdmin के माध्यम से ऐसा करने के लिए, यह करें:
चरण 1) लॉगिन करें
अपने pgAdmin खाते में लॉगिन करें.
चरण 2) डेटाबेस पर क्लिक करें
- बाईं ओर स्थित नेविगेशन बार से डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें.
चरण 3) क्वेरी टाइप करें
क्वेरी संपादक में क्वेरी टाइप करें:
SELECT * FROM Price UNION SELECT * FROM Price2 ORDER BY price DESC;
चरण 4) निष्पादित करें बटन पर क्लिक करें.
इसके बाद, Execute बटन पर क्लिक करें। जैसा कि नीचे दी गई छवि में दिखाया गया है।
इसे निम्नलिखित लौटना चाहिए:
संघ सभी
चरण 1) अपने pgAdmin खाते में लॉगिन करें.
चरण 2)
- बाईं ओर स्थित नेविगेशन बार से, डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें.
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
SELECT id FROM Book UNION ALL SELECT id FROM price;
चरण 4) निष्पादित करें बटन पर क्लिक करें.
इसे निम्नलिखित लौटना चाहिए:
द्वारा आदेश
UNION ALL ऑपरेटर को ORDER BY क्लॉज के साथ संयोजित करके परिणाम सेट में परिणामों को क्रमित किया जा सकता है। उदाहरण के लिए:
SELECT id FROM Book UNION ALL SELECT id FROM price ORDER BY id;
यह आदेश निम्नलिखित परिणाम देगा:
परिणामों का आदेश दे दिया गया है।
सारांश
- RSI PostgreSQL UNION ऑपरेटर एक से अधिक परिणामों को संयोजित करता है चयन कथन एक परिणाम सेट में.
- UNION ऑपरेटर डुप्लिकेट रिकॉर्ड नहीं लौटाता.
- परिणामों को क्रमबद्ध करने के लिए, इसे ORDER BY क्लॉज के साथ संयोजित करें।
- UNION ALL ऑपरेटर एक से अधिक SELECT कथनों के परिणामों को एक परिणाम सेट में संयोजित करता है।
- UNION ALL ऑपरेटर डुप्लिकेट को नहीं हटाता.
इस ट्यूटोरियल में प्रयुक्त डेटाबेस डाउनलोड करें