Database
 sql >> डेटाबेस >  >> RDS >> Database

एसक्यूएल जॉइन के प्रकार

SQL JOIN उनके संबंध के आधार पर एक या एक से अधिक तालिकाओं को जोड़ता है। SQL JOIN में पैरेंट टेबल और चाइल्ड टेबल संबंध शामिल होते हैं।

SQL JOINS के विभिन्न प्रकार हैं:

  1. आंतरिक जुड़ाव
  2. बाएं बाहरी जुड़ाव
  3. दायां बाहरी जुड़ाव
  4. पूर्ण बाहरी जुड़ाव
  5. क्रॉस जॉइन करें।

आइए उदाहरणों की सहायता से प्रत्येक प्रकार के SQL जॉइन को समझते हैं।

आंतरिक जुड़ाव

SQL में इनर जॉइन व्यापक रूप से इस्तेमाल किया जाने वाला जॉइन है। यह दोनों तालिकाओं से तब तक सभी रिकॉर्ड प्राप्त करता है जब तक कि स्थिति मेल नहीं खाती। इसका मतलब है कि यह जुड़ाव केवल उन पंक्तियों को लौटाएगा जो दोनों तालिकाओं में आम हैं।

एसक्यूएल इनर जॉइन का सिंटैक्स:

चुनें  Table_Name1.Colum_Name1,   Table_Name1.Column_Name2, Table_Name1.Column_Name3,Table_Name2.Column_Name1,Table_Name2.Column_Name2, Table_Name2.Column_Name3, FROM Table_Name1 INNER JOIN> Table_Name2 ON table_Name1.Column_Name =Table_Name 

पहले से मौजूद तालिकाओं पर विचार करें, जिनमें निश्चित डेटा है:

तालिका 1:कर्मचारी

कर्मचारी FIRST_NAME LAST_NAME वेतन शहर विभाग मैनेजरिड
1001 वैभवी मिश्रा 65500 पुणे ओरेकल 1
1002 वैभव शर्मा 60000 नोएडा सी# 5
1003 निखिल वाणी 50500 जयपुर FMW 2
2001 प्राची शर्मा 55500 चंडीगढ़ ओरेकल 1
2002 भावेश जैन 65500 पुणे FMW 2
2003 रुचिका जैन 50000 मुंबई सी# 5
3001 प्रानोटी शेंडे 55500 पुणे जावा 3
3002 अनुजा WANRE 50500 जयपुर FMW 2
3003 दीपम जौहारी 58500 मुंबई जावा 3
4001 राजेश GOUD 60500 मुंबई परीक्षण 4
4002 अश्विनी बगत 54500 नोएडा जावा 3
4003 रुचिका अग्रवाल 60000 दिल्ली ओरेकल 1
5001 ARCHIT शर्मा 55500 दिल्ली परीक्षण 4

तालिका 2:प्रबंधक

प्रबंधक manager_name प्रबंधक_विभाग
1 स्नेहदीप कौर ओरेकल
2 कीर्ति कीर्तन FMW
3 अभिषेक मनीष जावा
4 अनुपम मिश्रा परीक्षण
5 आकाश कदम सी#

तालिका 3:लैपटॉप:

लैपटॉपिड नाम कर्मचारी
L101 डेल शून्य
L102 हिमाचल प्रदेश 1002
L103 लेनोवो शून्य
L104 हिमाचल प्रदेश 3003
L105 डेल 4002
L106 लेनोवो 4003
L107 डेल 5001
L108 हिमाचल प्रदेश शून्य
L109 डेल शून्य
L110 हिमाचल प्रदेश शून्य

SQL इनर जॉइन के उदाहरण

उदाहरण 1: कर्मचारी तालिका और प्रबंधक तालिका में शामिल होने के लिए एक क्वेरी निष्पादित करें और कर्मचारियों के विवरण जैसे कर्मचारी आईडी, कर्मचारी का नाम, कर्मचारी की तालिका से वेतन, और प्रबंधक आईडी और प्रबंधक तालिका से प्रबंधक का नाम प्रदर्शित करें।

कर्मचारियों में से E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, E.SALARY, M.MANAGERID, M.MANAGER_NAME का चयन करें E.MANAGERID =M.MANAGERID पर M.MANAGER_NAME का चयन करें;

उपरोक्त क्वेरी में, हमने कर्मचारी आईडी, प्रथम नाम, अंतिम नाम, कर्मचारी की तालिका से वेतन और प्रबंधक आईडी, प्रबंधक तालिका से प्रबंधक का नाम प्राप्त किया, जहां कर्मचारियों की तालिका प्रबंधक आईडी कॉलम प्रबंधक तालिका प्रबंधक आईडी कॉलम के बराबर है। क्वेरी दोनों तालिकाओं से सभी मिलान रिकॉर्ड लौटाएगी। प्रबंधक आईडी दोनों तालिकाओं के बीच एक सामान्य स्तंभ है। ई कर्मचारी तालिका के लिए उपनाम नाम है, जबकि एम प्रबंधक तालिका के लिए है। प्रबंधक आईडी फ़ील्ड को कर्मचारी तालिका पर एक विदेशी कुंजी के रूप में रखा गया है। प्रबंधक आईडी प्रबंधक तालिका में प्राथमिक कुंजी के रूप में कार्य करती है, जो दो तालिकाओं के बीच अभिभावक-बाल संबंध बनाता है।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME वेतन मैनेजरिड MANAGER_NAME
1001 वैभवी मिश्रा 65500 1 स्नीदीप कौर
2001 प्राची शर्मा 55500 1 स्नीदीप कौर
4003 रुचिका अग्रवाल 60000 1 स्नीदीप कौर
1003 निखिल वाणी 50500 2 कीर्ति कीर्तन
2002 भावेश जैन 65500 2 कीर्ति कीर्तन
3002 अनुजा WANRE 50500 2 कीर्ति कीर्तन
3001 प्रानोटी शेंडे 55500 3 अभिषेक मनीष
3003 दीपम जौहारी 58500 3 अभिषेक मनीष
4002 अश्विनी बगत 54500 3 अभिषेक मनीष
4001 राजेश GOUD 60500 4 अनुपम मिश्रा
5001 ARCHIT शर्मा 55500 4 अनुपम मिश्रा
1002 वैभव शर्मा 60000 5 आकाश कदम
2003 रुचिका जैन 50000 4 आकाश कदम

प्रबंधक आईडी द्वारा रिकॉर्ड आरोही क्रम में प्रदर्शित होते हैं।

उदाहरण 2: कर्मचारी तालिका और प्रबंधक तालिका में शामिल होने के लिए एक क्वेरी निष्पादित करें, और कर्मचारी विवरण जैसे कर्मचारी आईडी, कर्मचारी का नाम, कर्मचारी की तालिका से वेतन और प्रबंधक आईडी और प्रबंधक विभाग को प्रबंधक तालिका से प्रदर्शित करें जहां कर्मचारी का वेतन 58000 से अधिक है।

 E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, E.SALARY, M.MANAGERID, M.MANAGER_DEPARTMENT FROM EMPLOYEES E INNER JOIN MANAGER M ON E.MANAGERID =M.MANAGERID जहां वेतन> 58000;> 

उपरोक्त प्रश्न में, हमने कर्मचारी आईडी, प्रथम नाम, अंतिम नाम, कर्मचारी की तालिका से वेतन, प्रबंधक आईडी, और प्रबंधक विभाग को प्रबंधक तालिका से प्राप्त किया जहां कर्मचारियों की तालिका से प्रबंधक आईडी प्रबंधक से प्रबंधक आईडी के बराबर है तालिका में केवल वे कर्मचारी रिकॉर्ड करते हैं जिनका वेतन 58000 से अधिक है।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME वेतन मैनेजरिड MANAGER_DEPARTMENT
1001 वैभवी मिश्रा 65500 1 ओरेकल
4003 रुचिका अग्रवाल 60000 1 ओरेकल
2002 भावेश जैन 65500 2 FMW
3003 दीपम जौहारी 58500 3 जावा
4001 राजेश GOUD 60500 4 परीक्षण
1002 वैभव शर्मा 60000 5 सी#

केवल छह रिकॉर्ड प्रदर्शित होते हैं जहां एक कर्मचारी का वेतन 58000 से अधिक होता है।

उदाहरण 3: कर्मचारी तालिका और लैपटॉप तालिका में शामिल होने के लिए एक क्वेरी निष्पादित करें, कर्मचारी विवरण जैसे कर्मचारी आईडी, कर्मचारी का नाम और वेतन, कर्मचारी की तालिका से शहर, लैपटॉप आईडी, और लैपटॉप तालिका से लैपटॉप का नाम प्रदर्शित करें

 EMP.EMPLOYEEID, EMP.FIRST_NAME, EMP.SALARY, EMP.CITY, LAP.LAPTOPID, LAP चुनें। कर्मचारियों से नाम EMP इनर EMP.EMPLOYEEID =LAP.EMPLOYEEID पर लैपटॉप लैप में शामिल हों;

उपरोक्त प्रश्न में, हमने कर्मचारी आईडी, प्रथम नाम, वेतन, कर्मचारियों की टेबल लैपटॉप आईडी से शहर, और लैपटॉप टेबल से नाम प्राप्त किया जहां कर्मचारी तालिका से कर्मचारी आईडी लैपटॉप तालिका से कर्मचारी आईडी के बराबर है। कर्मचारी आईडी लैपटॉप तालिका में एक विदेशी कुंजी है, जो कर्मचारी तालिका और लैपटॉप तालिका के बीच अभिभावक-बाल संबंध बनाता है।

आउटपुट:

कर्मचारी FIRST_NAME वेतन शहर लैपटॉपिड नाम
1002 वैभव 60000 नोएडा L102 हिमाचल प्रदेश
3003 दीपम 58500 मुंबई L104 हिमाचल प्रदेश
4002 अश्विनी 54500 नोएडा L105 डेल
4003 रुचिका 60000 दिल्ली L106 लेनोवो
5001 ARCHIT 55500 दिल्ली L107 डेल

केवल पांच कर्मचारियों के रिकॉर्ड प्रदर्शित होते हैं।

उदाहरण 4: कर्मचारी तालिका से कर्मचारी आईडी, प्रथम नाम, वेतन और विभाग प्रदर्शित करने के लिए एक प्रश्न लिखें प्रबंधक आईडी और प्रबंधक तालिका से प्रबंधक का नाम आंतरिक जुड़ाव का उपयोग करके जहां वेतन> 55000 और विभाग Oracle है।

कर्मचारी चुनें, FIRST_NAME, वेतन, विभाग, M.MANAGERID, M.MANAGER_NAME कर्मचारियों से E.MANAGERID =M.MANAGERID जहां वेतन> 55000 और DEPARTMENT ='ORACLE';

उपरोक्त जॉइन क्वेरी उदाहरण में, हम कर्मचारी के विवरण जैसे आईडी, नाम, वेतन, और कर्मचारी की तालिका से विभाग, प्रबंधक आईडी, और प्रबंधक तालिका से प्रबंधक का नाम प्रदर्शित करते हैं जहां कर्मचारियों की तालिका से प्रबंधक आईडी प्रबंधक आईडी के बराबर होती है प्रबंधक केवल वे कर्मचारी जिनका वेतन 55000 से अधिक है और विभाग Oracle है।

आउटपुट:

कर्मचारी FIRST_NAME वेतन विभाग मैनेजरिड MANAGER_NAME
1001 वैभवी 65500 ओरेकल 1 स्नेहदीप कौर
2001 प्राची 55500 ओरेकल 1 स्नेहदीप कौर
4003 रुचिका 60000 ओरेकल 1 स्नेहदीप कौर

केवल तीन कर्मचारी जिनका वेतन 55000 से अधिक है और विभाग Oracle है।

उदाहरण 5: कर्मचारी, प्रबंधक और लैपटॉप टेबल पर एक जॉइन क्वेरी निष्पादित करें, और कर्मचारियों के विवरण, प्रबंधक आईडी और लैपटॉप आईडी प्रदर्शित करें।

चुनें E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, M.MANAGERID, L.L.LAPTOPID फ्रॉम एम्प्लॉयीज ई इनर जॉइन मैनेजर M ऑन E.MANAGERID =M.MANAGERID INNER JOIN LEPTOYEE ON E.EMPLOYEEID ON E.EMPLOYEEID; 

उपरोक्त क्वेरी कर्मचारी आईडी, प्रथम नाम, अंतिम नाम, प्रबंधक आईडी, और कर्मचारियों, प्रबंधक और लैपटॉप तालिकाओं से लैपटॉप आईडी प्रदर्शित करती है। हम तीन तालिकाओं में शामिल होते हैं। कर्मचारी आईडी कर्मचारियों और लैपटॉप तालिका के बीच एक सामान्य स्तंभ है और इन तीन तालिकाओं के बीच एक अभिभावक-बाल संबंध बनाता है। कर्मचारियों और प्रबंधकों के बीच, टेबल मैनेजर आईडी सामान्य कॉलम है।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME मैनेजरिड लैपटॉपिड
4003 रुचिका अग्रवाल 1 L106
3003 दीपम जौहारी 3 L104
4002 अश्विनी बगत 3 L105
5001 ARCHIT शर्मा 4 L107
1002 वैभव शर्मा 5 L102

बाएं बाहरी जुड़ाव

लेफ्ट आउटर जॉइन जॉइन के बाईं ओर सभी टेबल रिकॉर्ड लौटाएगा और जॉइन के दाईं ओर टेबल के लिए मैचिंग रिकॉर्ड। परिणाम-सेट में उन रिकॉर्ड्स के लिए शून्य है जो दाईं ओर सामान्य नहीं हैं।

बाएं बाहरी जुड़ाव का सिंटैक्स:

चुनें        Table_Name1.Colum_Name1,     Table_Name1.Column_Name2, Table_Name1.Column_Name3,Table_Name2.Column_Name1,Table_Name2.Column_Name2, Table_Name2.Column_Name3, FROM Table_Name_Name1 LEFT OUTER JOIN Table_Name2.Pre>Table_Name1. 

मौजूदा तालिकाओं पर विचार करें, जिनमें निम्नलिखित रिकॉर्ड हैं:

तालिका 1:कर्मचारी

कर्मचारी FIRST_NAME LAST_NAME वेतन शहर विभाग मैनेजरिड
1001 वैभवी मिश्रा 65500 पुणे ओरेकल 1
1002 वैभव शर्मा 60000 नोएडा सी# 5
1003 निखिल वाणी 50500 जयपुर FMW 2
2001 प्राची शर्मा 55500 चंडीगढ़ ओरेकल 1
2002 भावेश जैन 65500 पुणे FMW 2
2003 रुचिका जैन 50000 मुंबई सी# 5
3001 प्रानोटी शेंडे 55500 पुणे जावा 3
3002 अनुजा WANRE 50500 जयपुर FMW 2
3003 दीपम जौहारी 58500 मुंबई जावा 3
4001 राजेश GOUD 60500 मुंबई परीक्षण 4
4002 अश्विनी बगत 54500 नोएडा जावा 3
4003 रुचिका अग्रवाल 60000 दिल्ली ओरेकल 1
5001 ARCHIT शर्मा 55500 दिल्ली परीक्षण 4

तालिका 2:प्रबंधक

प्रबंधक manager_name प्रबंधक_विभाग
1 स्नेहदीप कौर ओरेकल
2 कीर्ति कीर्तन FMW
3 अभिषेक मनीष जावा
4 अनुपम मिश्रा परीक्षण
5 आकाश कदम सी#

तालिका 3:लैपटॉप

लैपटॉपिड नाम कर्मचारी
L101 डेल शून्य
L102 हिमाचल प्रदेश 1002
L103 लेनोवो शून्य
L104 हिमाचल प्रदेश 3003
L105 डेल 4002
L106 लेनोवो 4003
L107 डेल 5001
L108 हिमाचल प्रदेश शून्य
L109 डेल शून्य
L110 हिमाचल प्रदेश शून्य

एसक्यूएल लेफ्ट आउटर जॉइन के उदाहरण

उदाहरण 1: एम्प्लॉइज टेबल और लैपटॉप टेबल पर एक लेफ्ट आउटर जॉइन क्वेरी निष्पादित करें, जहां कर्मचारी आईडी, कर्मचारी का नाम और लैपटॉप आईडी प्रदर्शित करें।

चुनें E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, L.LAPTOPID, L.NAME कर्मचारियों में से E.EMPLOYEEID =L.EMPLOYEEID पर लैपटॉप एल में शामिल हों; 

उपरोक्त क्वेरी में, हमने कर्मचारी आईडी, प्रथम नाम, कर्मचारी के टेबल लैपटॉप आईडी से अंतिम नाम, और लैपटॉप टेबल से नाम प्रदर्शित किया और इन दो तालिकाओं पर एक बाएं बाहरी जॉइन क्वेरी का प्रदर्शन किया। यदि पंक्तियाँ तालिकाओं के बीच समान नहीं हैं, तो क्वेरी तालिका के दाईं ओर शून्य मान लौटाएगी।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME लैपटॉपिड नाम
1001 वैभवी मिश्रा शून्य शून्य
1002 वैभव शर्मा L102 हिमाचल प्रदेश
1003 निखिल वाणी शून्य शून्य
2001 प्राची शर्मा शून्य शून्य
2002 भावेश जैन शून्य शून्य
2003 रुचिका जैन शून्य शून्य
3001 प्रानोटी शेंडे शून्य शून्य
3002 अनुजा WANRE शून्य शून्य
3003 दीपम जौहारी L104 हिमाचल प्रदेश
4001 राजेश GOUD शून्य शून्य
4002 अश्विनी बगत L105 डेल
4003 रुचिका अग्रवाल L106 लेनोवो
5001 ARCHIT शर्मा L107 डेल

उदाहरण 2: कर्मचारी आईडी, प्रथम नाम, अंतिम नाम, कर्मचारी की तालिका से वेतन लाने के लिए एक प्रश्न लिखें, लैपटॉप टेबल पर बाहरी शामिल हों जहां वेतन> 55000।

 E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, E.SALARY, L.LAPTOPID, L.NAME को कर्मचारियों से चुनें और E.EMPLOYEEID पर L.EMPLOYEEID चुनें, जहां वेतन> 55000;
पूर्व>

उपरोक्त प्रश्न में, हमने कर्मचारियों की तालिका से कर्मचारी विवरण और लैपटॉप तालिका से लैपटॉप विवरण प्राप्त किया, लेकिन केवल उन कर्मचारी विवरण जहां वेतन 55000 से अधिक है। हमने इन दो तालिकाओं पर बाएं बाहरी जुड़ने की क्वेरी का प्रदर्शन किया। यदि पंक्तियाँ तालिकाओं के बीच समान नहीं हैं, तो क्वेरी तालिका के दाईं ओर शून्य मान लौटाएगी।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME वेतन लैपटॉपिड नाम
1001 वैभवी मिश्रा 65500 शून्य शून्य
1002 वैभव शर्मा 60000 L102 हिमाचल प्रदेश
2001 प्राची शर्मा 55500 शून्य शून्य
2002 भावेश जैन 65500 शून्य शून्य
3001 प्रानोटी शेंडे 55500 शून्य शून्य
3003 दीपम जौहारी 58500 L104 हिमाचल प्रदेश
4001 राजेश GOUD 60500 शून्य शून्य
4003 रुचिका अग्रवाल 60000 L106 लेनोवो
5001 ARCHIT शर्मा 55500 L107 डेल

दायां बाहरी जुड़ाव

राइट आउटर जॉइन जॉइन के दाईं ओर सभी टेबल रिकॉर्ड लौटाएगा और जॉइन के बाईं ओर टेबल के लिए मैचिंग रिकॉर्ड। परिणाम-सेट में उन रिकॉर्ड्स के लिए शून्य है जो बाईं ओर सामान्य नहीं हैं।

दाएं बाहरी जुड़ाव का सिंटैक्स:

चुनें        Table_Name1.Colum_Name1,     Table_Name1.Column_Name2, Table_Name1.Column_Name3,Table_Name2.Column_Name1,Table_Name2.Column_Name2, Table_Name2.Column_Name3, Table_Name1 से सही बाहरी जॉइन टेबल_नाम2 टेबल_नाम1 पर टेबल_नाम2। 

एसक्यूएल राइट आउटर जॉइन के उदाहरण

उदाहरण 1: कर्मचारियों की टेबल और लैपटॉप टेबल पर राइट आउटर जॉइन क्वेरी निष्पादित करें, जहां कर्मचारी आईडी, कर्मचारियों का नाम प्रदर्शित करें।

 E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, L.LAPTOPID, L.NAME को कर्मचारियों से चुनें E.EMPLOYEEID =L.EMPLOYEEID पर लैपटॉप एल में शामिल हों; 

उपरोक्त क्वेरी में, हमने कर्मचारी आईडी, प्रथम नाम, कर्मचारी के टेबल लैपटॉप आईडी से अंतिम नाम, और लैपटॉप टेबल से नाम प्रदर्शित किया और इन दो तालिकाओं पर सही बाहरी जॉइन क्वेरी का प्रदर्शन किया। यदि पंक्तियाँ तालिकाओं के बीच समान नहीं हैं, तो क्वेरी तालिका के बाईं ओर शून्य मान लौटाएगी।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME लैपटॉपिड नाम
शून्य शून्य शून्य L101 डेल
1002 वैभव शर्मा L102 हिमाचल प्रदेश
शून्य शून्य शून्य L103 लेनोवो
3003 दीपम जौहारी L104 हिमाचल प्रदेश
4002 अश्विनी बगत L105 डेल
4003 रुचिका अग्रवाल L106 लेनोवो
5001 ARCHIT शर्मा L107 डेल
शून्य शून्य शून्य L108 हिमाचल प्रदेश
शून्य शून्य शून्य L109 डेल
शून्य शून्य शून्य L110 हिमाचल प्रदेश

उदाहरण 2: कर्मचारी की तालिका से कर्मचारी आईडी, प्रथम नाम और अंतिम नाम लाने के लिए एक प्रश्न लिखें। लैपटॉप टेबल पर राइट आउटर जॉइन जहां लैपटॉप के नाम में एक सूची शामिल है, वह है डेल, एचपी।

 E.EMPLOYEEID, E.FIRST_NAME, E.LAST_NAME, E.SALARY, L.LAPTOPID, L.NAME को कर्मचारियों से चुनें और E.EMPLOYEEID पर L.EMPLOYEEID चुनें जहां L.NAME IN (' डेल', 'एचपी');

उपरोक्त प्रश्न में, हमने कर्मचारी के टेबल लैपटॉप विवरण से कर्मचारियों के विवरण को लैपटॉप टेबल पर प्रदर्शित किया। हमने इन दो टेबलों पर सही बाहरी जॉइन क्वेरी का प्रदर्शन किया, केवल वह कर्मचारी जिसका लैपटॉप नाम सूचियों में से एक है, वह डेल और एचपी है। यदि पंक्तियाँ तालिकाओं के बीच समान नहीं हैं, तो क्वेरी तालिका के बाईं ओर शून्य मान लौटाएगी।

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME लैपटॉपिड नाम
शून्य शून्य शून्य L101 डेल
1002 वैभव शर्मा L102 हिमाचल प्रदेश
3003 दीपम जौहारी L104 हिमाचल प्रदेश
4002 अश्विनी बगत L105 डेल
5001 ARCHIT शर्मा L107 डेल
शून्य शून्य शून्य L108 हिमाचल प्रदेश
शून्य शून्य शून्य L109 डेल
शून्य शून्य शून्य L110 हिमाचल प्रदेश

पूर्ण बाहरी जुड़ाव

फुल आउटर जॉइन, लेफ्ट आउटर जॉइन और राइट आउटर जॉइन दोनों के परिणाम को मर्ज करता है। फुल आउटर जॉइन क्रॉस जॉइन के समान है। फ़ुल आउटर जॉइन आउटपुट देता है, जहाँ पंक्तियों के बीच पंक्तियाँ सामान्य या असामान्य होती हैं।

पूर्ण बाहरी जुड़ाव का सिंटैक्स:

तालिका 1 से COLUMNNAME1, COLUMNNAME2 चुनें, तालिका 2 में पूर्ण रूप से शामिल हों;

उदाहरण 1: कर्मचारी आईडी, प्रथम नाम, कर्मचारी की तालिका से प्रबंधक आईडी से अंतिम नाम प्रदर्शित करने के लिए एक प्रश्न लिखें, पूर्ण बाहरी प्रबंधक तालिका में शामिल हों जहां कर्मचारी का वेतन 65000 से अधिक है।

कर्मचारी चुनें, FIRST_NAME, LAST_NAME, M.MANAGERID कर्मचारियों से पूर्ण रूप से शामिल हों प्रबंधक M जहां वेतन> 65000;

उपरोक्त प्रश्न में, हमने कर्मचारियों और प्रबंधक तालिका से कर्मचारियों के विवरण और प्रबंधक विवरण प्रदर्शित किए, जहां कर्मचारी का वेतन पूर्ण जॉइन का उपयोग करके 65000 से अधिक है। पूरी तरह से, कर्मचारी की तालिका की प्रत्येक पंक्ति को प्रबंधक की तालिका की प्रत्येक पंक्ति में शामिल करें, यानी कार्टेशियन उत्पाद होगा। एम * एन

आउटपुट:

कर्मचारी FIRST_NAME LAST_NAME मैनेजरिड
1001 वैभवी मिश्रा 1
1001 वैभवी मिश्रा 2
1001 वैभवी मिश्रा 3
1001 वैभवी मिश्रा 4
1001 वैभवी मिश्रा 5
2002 भावेश जैन 1
2002 भावेश जैन 2
2002 भावेश जैन 3
2002 भावेश जैन 4
2002 भावेश जैन 5

जैसा कि हम देख सकते हैं, कर्मचारी आईडी 1001 क्रॉस प्रत्येक प्रबंधक आईडी के साथ जुड़ता है, वही कर्मचारी आईडी 2002 के साथ।

उदाहरण 2: कर्मचारी टेबल और लैपटॉप टेबल पर एक पूर्ण बाहरी जॉइन क्वेरी निष्पादित करें, जहां कर्मचारी वेतन 60000 से अधिक है, और कर्मचारी स्थान पुणे है।

लैपटॉप से ​​चुनें, E.EMPLOYEEID, E.FIRST_NAME, E.SALARY, E.CITY, LAPTOP फुल जॉइन एम्प्लॉयीज और CITY ='PUNE';

उपरोक्त प्रश्न में, हम लैपटॉप आईडी, कर्मचारी आईडी, प्रथम नाम, वेतन, और लैपटॉप से ​​शहर को पूर्ण रूप से शामिल कर्मचारियों को प्रदर्शित करते हैं, जिनका वेतन 600000 से अधिक है और शहर पुणे है। यदि दोनों शर्तें केवल कर्मचारी के लिए मेल खाती हैं, तो रिकॉर्ड प्राप्त किया जाता है।

आउटपुट:

क्रॉस जॉइन करें

SQL में क्रॉस जॉइन और कुछ नहीं बल्कि कार्टेशियन उत्पाद कहलाते हैं। एक तालिका की प्रत्येक पंक्ति दूसरी तालिका की प्रत्येक पंक्ति के साथ संयुक्त या विलय हो जाती है। एम * एन क्रॉस जॉइन है

क्रॉस जॉइन का सिंटैक्स:

COLUMNNAME1, COLUMNNAME2 को TABLE1 से चुनें और TABLE2 में शामिल हों;

उदाहरण 1: कर्मचारी तालिका और प्रबंधक तालिका पर क्रॉस जॉइन ऑपरेशन करने के लिए एक प्रश्न लिखें जहां कर्मचारी का पहला नाम ए से शुरू होता है

कर्मचारी चुनें, FIRST_NAME, M.MANAGERID फ्रॉम एम्प्लॉयीज क्रॉस जॉइन मैनेजर M जहां FIRST_NAME को 'A%' पसंद है;

उपरोक्त पूर्ण बाहरी जॉइन क्वेरी उदाहरण में, हमने कर्मचारी तालिका और प्रबंधक तालिका से कर्मचारी विवरण और प्रबंधक विवरण पुनर्प्राप्त किया, लेकिन केवल वे रिकॉर्ड जहां कर्मचारी का पहला नाम 'ए' अक्षर से शुरू होता है।

आउटपुट:

परिणाम से पता चलता है कि कर्मचारी आईडी प्रत्येक प्रबंधक आईडी पंक्ति के साथ एक क्रॉस जॉइन है।

एम * एन यहां, एम =3; कर्मचारी तालिका से कर्मचारी आईडी

एन =5; प्रबंधक तालिका 3 * 5 =15 पंक्तियों से प्रबंधक आईडी।

उदाहरण 2: लैपटॉप टेबल और कर्मचारी टेबल पर जहां कर्मचारी वेतन 58000 से अधिक है और मुंबई में क्रॉस जॉइन ऑपरेशन करने के लिए एक प्रश्न लिखें।

लैपटॉप क्रॉस से चुनें लैपटॉप, नाम, ई-कर्मचारी कर्मचारी, जहां वेतन> 58000 और शहर ='मुंबई';

उपरोक्त क्वेरी में, हमने कर्मचारियों की टेबल पर क्रॉस जॉइन ऑपरेशन करने के लिए लैपटॉप टेबल से लैपटॉप आईडी, नाम और कर्मचारी आईडी प्रदर्शित की, जहां कर्मचारी का वेतन 58000 से अधिक है और शहर पुणे है। क्रॉस जॉइन M * N की तरह परफॉर्म करता है।

आउटपुट:


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक ऑनलाइन सर्वेक्षण के लिए एक डेटाबेस मॉडल। भाग 3

  2. संख्या श्रृंखला जनरेटर चुनौती समाधान - भाग 1

  3. डॉकर के साथ TimescaleDB को तैनात करने के लिए एक गाइड

  4. मेडिकल अपॉइंटमेंट बुकिंग ऐप के लिए एक डेटा मॉडल

  5. Azure स्वचालन के तरीके