Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> SQL

SQL सबक्वेरी:एक पूर्ण गाइड

एक SQL सबक्वेरी किसी अन्य क्वेरी के अंदर एक क्वेरी है। इसका उपयोग SQL स्टेटमेंट के WHERE या HAVING क्लॉज में किया जाता है। उपश्रेणियाँ आपको एक क्वेरी के परिणामों को दूसरी क्वेरी में तर्क के रूप में निर्दिष्ट करने देती हैं।

जब आप एक एसक्यूएल लिख रहे हों क्वेरी, आप किसी अन्य क्वेरी के परिणाम के आधार पर एक पैरामीटर निर्दिष्ट करना चाह सकते हैं। उदाहरण के लिए, मान लें कि आपके पास ग्राहकों की सूची है। आप उन ग्राहकों की सूची प्राप्त करना चाह सकते हैं जिन्होंने एक निश्चित राशि से अधिक मूल्य के ऑर्डर दिए हैं। ऑर्डर और ग्राहक की जानकारी एक अलग टेबल में स्टोर की जाती है।

यहीं पर एसक्यूएल सबक्वेरी . है कार्रवाई आती है। उपश्रेणियां , जिसे नेस्टेड क्वेरी के रूप में भी जाना जाता है, SELECT . हैं कहां . के अंतर्गत क्वेरी एक और एसक्यूएल का खंड जिज्ञासा। मुख्य एसक्यूएल क्वेरी तब सबक्वेरी के परिणाम का उपयोग करती है।

इस ट्यूटोरियल में, हम चर्चा करने जा रहे हैं कि SQL में सबक्वेरी का उपयोग कैसे करें, कुछ उदाहरणों के संदर्भ में।

एसक्यूएल सबक्वेरी:एक गाइड

एक SQL सबक्वेरी किसी अन्य क्वेरी के भीतर एक क्वेरी है। उनका उपयोग एक क्वेरी चलाने के लिए किया जाता है जो किसी अन्य क्वेरी के परिणामों पर निर्भर करता है। उपश्रेणियाँ आपको दो अलग-अलग प्रश्नों को लिखने और परिणामों को कॉपी-पेस्ट किए बिना ऐसा करने देती हैं। सबक्वेरी WHERE या HAVING क्लॉज में दिखाई देते हैं।

SQL SELECT स्टेटमेंट में सबक्वेरी के लिए सिंटैक्स यहां दिया गया है:

<पूर्व>उत्पादों से नाम चुनें, जहां सप्लायर_आईडीआईएन (आपूर्तिकर्ताओं से आईडी चुनें जहां स्थानीय =सही);

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

हम INSERT, UPDATE और DELETE स्टेटमेंट में सबक्वायरी का उपयोग कर सकते हैं।

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

कोष्ठक में एक सबक्वेरी दिखाई देनी चाहिए। यह एक सबक्वेरी के अंदर के हिस्से को दूसरी सबक्वेरी से अलग करता है।

आपको यह सुनिश्चित करना चाहिए कि आपने अपनी सबक्वेरी में प्रासंगिक डेटा का चयन किया है। उपरोक्त हमारी उपश्रेणी में, हमने id . का चयन किया है आपूर्तिकर्ताओं . से टेबल। अगर हमने दूसरा कॉलम चुना होता, तो हमारी क्वेरी काम नहीं करती। ऐसा इसलिए है क्योंकि हमारी मुख्य क्वेरी सप्लायर आईडी पर निर्भर करती है।

SQL सबक्वेरी उदाहरण:चुनें

मान लें कि आप उन छात्रों की सूची प्राप्त करना चाहते हैं जो ऑनर ​​रोल में थे, आप सबक्वायरी का उपयोग कर सकते हैं . यह मानता है कि ऑनर रोल की जानकारी किसी अन्य तालिका में है।

आइए एक उदाहरण का उपयोग करके बताएं कि कैसे एसक्यूएल सबक्वेरी काम। निम्नलिखित क्वेरी उन सभी ग्राहकों की सूची लौटाएगी जिन्होंने $200 से अधिक का ऑर्डर दिया है:

चुनें * ग्राहकों से जहां आईडी IN (आदेशों से DISTINCT ग्राहक_आईडी चुनें जहां लागत> 200);

हमारी सबक्वायरी निम्नलिखित लौटाता है:

नाम ईमेल पता लॉयल्टी_प्लान आईडी
कैटी [email protected] माउंटेन व्यू, CA कोई नहीं 4
जॉन [email protected] बोस्टन, MA कोई नहीं 1

(2 पंक्तियाँ)

पहली पंक्ति में, हम अपने ग्राहकों . में से प्रत्येक कॉलम का चयन करते हैं टेबल। फिर, हम निर्दिष्ट करते हैं कि हम केवल उन्हीं ग्राहकों को प्राप्त करना चाहते हैं जिनकी ग्राहक आईडी सबक्वायरी . में है . हमारी सबक्वायरी हमारे आदेशों . से सभी विशिष्ट ग्राहक आईडी का चयन करता है तालिका जहां आइटम की कीमत $200 से अधिक है। इन शर्तों से मेल खाने वाले रिकॉर्ड में वे ग्राहक शामिल होते हैं जो परिणामों में शामिल होते हैं।

एसक्यूएल सबक्वेरी:INSERT

हम उन ग्राहकों के सभी रिकॉर्ड को सम्मिलित करना चाहते हैं जिन्होंने $200 से अधिक मूल्य की खरीदारी high_value_customers. नामक तालिका में की है। ऐसा करने के लिए, हम SQL सबक्वेरी और SQL INSERT कमांड का उपयोग कर सकते हैं:

INSERT INTO high_value_customersSELECT * FROM CustomersWHERE id IN (आदेशों से DISTINCT ग्राहक_आईडी चुनें जहां लागत> 200);

अगर हम अपने high_value_customers . से पूछताछ करते हैं तालिका, हम अपने सभी उच्च मूल्य वाले ग्राहकों को एक तालिका में देख सकते हैं:

नाम ईमेल पता लॉयल्टी_प्लान आईडी
कैटी [email protected] माउंटेन व्यू, CA सोना 4
जॉन [email protected] बोस्टन, MA कोई नहीं 1

(2 पंक्तियाँ)

एसक्यूएल सबक्वेरी:अपडेट करें

हम एक सबक्वायरी . का उपयोग कर सकते हैं एक तालिका के भीतर डेटा अद्यतन करने के लिए। उदाहरण के लिए, मान लें कि हम उन सभी ग्राहकों की लॉयल्टी योजनाओं को अपडेट करना चाहते हैं, जिन्होंने कांस्य के लिए उच्च-मूल्य की खरीदारी की है . हम उस ऑपरेशन को करने के लिए निम्नलिखित क्वेरी का उपयोग कर सकते हैं:

<पूर्व>ग्राहकों को अपडेट करेंसेट लॉयल्टी_प्लान ='उच्च मूल्य'जहां आईडी IN (आदेशों से DISTINCT ग्राहक_आईडी चुनें जहां लागत> 200);

जब हम अपने ग्राहकों . से पूछताछ करते हैं तालिका, हम देख सकते हैं कि वफादारी हमारे दो उच्च मूल्य . के लिए योजना बना रही है ग्राहकों को अपडेट कर दिया गया है:

नाम ईमेल पता लॉयल्टी_प्लान आईडी
कैटी [email protected] माउंटेन व्यू, CA उच्च मूल्य 4
जॉन [email protected] बोस्टन, MA उच्च मूल्य 1

(2 पंक्तियाँ)

एसक्यूएल सबक्वेरी:हटाएं

आप उपश्रेणियों का उपयोग कर सकते हैं तालिका में अलग-अलग या एकाधिक पंक्तियों को हटाने के लिए SQL DELETE कथन के साथ।

आइए एक कमांड लिखें जो उच्च मूल्य वाले ग्राहकों के ऑर्डर को हटा देता है, जिसे हम डेटाबेस में एक नई तालिका में ले गए। ऐसा करने के लिए, हमें एक सबक्वेरी पर निर्भर रहना होगा:

<पूर्व>आदेशों से हटाएं जहां customer_id IN (ग्राहकों से आईडी चुनें जहां वफादारी_प्लान ='उच्च मूल्य');

हम देख सकते हैं कि हमारे उच्च मूल्य वाले ग्राहकों के सभी ऑर्डर हटा दिए गए हैं। हमारी नेस्टेड सबक्वेरी रिटर्न:

आईडी आइटम_नाम लागत customer_id
5 ओक चेयर 100 3

(1 पंक्ति)

निष्कर्ष

एक SQL सबक्वेरी किसी अन्य क्वेरी के भीतर एक क्वेरी है। उपश्रेणियाँ आपको एक प्रश्न के दूसरे में परिणाम पर निर्भर रहने देती हैं। SQL कथन के HAVING या WHERE क्लॉज़ में उपश्रेणियाँ निर्दिष्ट की जाती हैं।

उपश्रेणियां किसी अन्य क्वेरी के परिणाम पर निर्भर क्वेरी को चलाना आसान बनाएं। इस गाइड में, हमने चर्चा की है कि सबक्वायरी . कैसे लिखना है एक एसक्यूएल . पर सर्वर। हमने SELECT . में सबक्वेरी का उपयोग करने के तरीके के बारे में भी बात की , सम्मिलित करें , अद्यतन करें , और एसक्यूएल हटाएं बयान।

क्या आप SQL में कोडिंग के बारे में अधिक जानना चाहते हैं? SQL गाइड कैसे सीखें हमारी जाँच करें। इस गाइड में SQL सीखने पर विशेषज्ञ सलाह शामिल है। आपको अपनी सीखने की यात्रा जारी रखने में मदद करने के लिए शीर्ष पाठ्यक्रमों की एक सूची भी मिलेगी।


  1. विंडोज 10 में माउस सेटिंग्स के लिए एक पूर्ण गाइड

    यद्यपि आप अपने पीसी से कनेक्ट होते ही वायर्ड, वायरलेस, या ब्लूटूथ माउस का उपयोग करना शुरू कर सकते हैं, यह हमेशा एक अच्छा विचार है कि आप इसे अपने इच्छित तरीके से कार्य करने के लिए अनुकूलित करें। विंडोज 10 में बहुत सारी माउस सेटिंग्स हैं जो इसमें आपकी मदद कर सकती हैं। उदाहरण के लिए, आप कर्सर की गति क

  1. Fortnite सिस्टम आवश्यकताएँ के लिए एक संपूर्ण मार्गदर्शिका

    Fortnite ने आजकल बहुत लोकप्रियता हासिल की है। लेकिन हाल ही में कई लोगों ने यह सवाल उठाया कि “क्या मैं इसे अपने पीसी पर चला सकता हूं ” और “यदि मेरा पीसी इस बैटल रॉयल गेम को चलाने के लिए सक्षम करने के लिए पर्याप्त रूप से संगत है आम तौर पर, अन्य सामान्य कार्यक्रमों की तुलना में, गेम में RAM, प्रोसेसर,

  1. एक संपूर्ण गाइड:फिटबिट पे

    फिटबिट उपलब्ध सर्वोत्तम स्मार्ट वियरेबल में से एक है। यह कई मॉडलों और कई विशेषताओं के साथ आता है। फिटबिट की प्रसिद्ध विशेषताओं में से एक फिटबिट पे है। Fitbit Ionic और Fitbit Versa में नियर फील्ड कम्युनिकेशंस चिप के साथ, आप किसी भी स्टोर पर कॉन्टैक्टलेस भुगतान के साथ भुगतान कर सकते हैं। इस पोस्ट में