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

SQL सर्वर में क्वेरी सबक्वायरी चाइल्ड

निम्न लेख आपको सिंटैक्स और उदाहरणों के साथ SQL सर्वर में उप-प्रश्नों का उपयोग करने का तरीका दिखाएगा।

एसक्यूएल (सबक्वेरी) में सबक्वेरी क्या है?

SQL सर्वर में, एक सबक्वेरी एक क्वेरी है जो किसी अन्य क्वेरी में रहती है। आप SQL कमांड में क्वेरी बना सकते हैं। ये सबक्वेरी WHERE, FROM या SELECT क्लॉज में हैं।

नोट:

  1. उपश्रेणियों को आंतरिक प्रश्न या आंतरिक चयन भी कहा जाता है।
  2. मुख्य क्वेरी जिसमें सबक्वेरी होती है, उसे OUTER QUERY या OUTER SELECT कहते हैं।

WHERE क्लॉज

आमतौर पर सबक्वेरी WHERE क्लॉज में होती है। इन सबक्वेरी को नेस्टेड क्वेरी या सबक्वेरी कहा जाता है।

  SELECT s.sanph am_id, s.sanpham_ten 
FROM sanpham s
WHERE s.sanpham_id IN
(SELECT htk.sanpham_id
FROM hangtonkho htk
WHERE htk.soluong > 10);

उपरोक्त SELECT स्टेटमेंट में यह सब-क्वेरी सेगमेंट है:

  (SELECT htk.sanp ham_id 
FROM hangtonkho htk
WHERE htk.soluong > 10);

सबक्वायरी हैंगटनखो टेबल से sanpham_id मानों को 10 से अधिक संख्या के साथ खोजने की अनुमति देती है। फिर सबक्वेरी का उपयोग IN कंडीशन का उपयोग करके मुख्य क्वेरी से परिणाम को फ़िल्टर करने के लिए किया जाता है। ।

उपश्रेणियों को नीचे दिखाए अनुसार INNER JOIN के रूप में लिखा जा सकता है।

  SELECT s.sanpham_id, s. sanpham_ten 
FROM sanpham s
INNER JOIN hangtonkho htk
ON s.sanpham_id = htk.sanpham_id
WHERE htk.soluong > 10;

INNER JOIN मूल सबक्वेरी की तुलना में अधिक कुशलता से वापस आएगा। यह भी ध्यान रखना महत्वपूर्ण है कि जॉइन द्वारा कोई प्रश्न फिर से नहीं लिखा जाता है।

FROM क्लॉज

  SELECT nhacu ng.nhacung_ten, truyvancon1.tong_sl 
FROM nhacung,
(SELECT nhacung_id, SUM(donhang.soluong) AS tong_sl
FROM donhang
GROUP BY nhacung_id) truyvancon1
WHERE truyvanco n1.nhacung_id = nhacung.nhacung_id;

इस उदाहरण में हमने FROM क्लॉज में सबक्वेरी इस प्रकार बनाई है:

  (SELECT nhacung _id, SUM(donhang.soluong) AS tong_sl 
FROM donhang
GROUP BY nhacung _id) truyvancon1

यह सबक्वेरी उर्फ ​​truyvancon1 से भी जुड़ी है। यह इस सबक्वेरी या इसके किसी सूचना क्षेत्र को संदर्भित करने के लिए इस्तेमाल किया जाने वाला नाम होगा।

चुनें खंड

आमतौर पर सबक्वेरी को SUM, COUNT, MIN या MAX जैसे योग फंक्शन द्वारा परिकलित करने के लिए SELECT क्लॉज में सेट किया जाता है, लेकिन मुख्य क्वेरी में गिनती नहीं करना चाहते।

पी>
  SELECT n1.ho, n1 .ten, 
(SELECT MAX(luong)
FROM nhanvien n2
WHERE n1.nhanvien_id = n2.nhanvien_id) truyvancon2
FROM nhanvien n1 ;

उपरोक्त उदाहरण में बनाई गई सबक्वेरी नीचे दी गई है

  (SELECT MAX ong) 
FROM nhanvien n2
WHERE n1.nhanvie n_id = n2.nhanvien_id) truyvancon2

यह सबक्वेरी उर्फ ​​truyvancon2 से भी जुड़ी है। यह इस सबक्वेरी या इसके किसी सूचना क्षेत्र को संदर्भित करने के लिए इस्तेमाल किया जाने वाला नाम होगा।

उपश्रेणियों को SELECT क्लॉज में रखने की ट्रिक का उपयोग किया जाता है क्योंकि सबक्वेरी एकल मान लौटाती है। यही कारण है कि सम फंक्शन जैसे SUM, COUNT, MIN या MAX अक्सर सबक्वेरी में उपयोग किए जाते हैं।


  1. SQL सर्वर में इंटरसेक्ट ऑपरेटर

    SQL Server (Transact-SQL) में, INTERSECT ऑपरेटर का उपयोग डेटा सेट या SELECT स्टेटमेंट दोनों में रिकॉर्ड वापस करने के लिए किया जाता है। यदि कोई रिकॉर्ड केवल एक क्वेरी में उपलब्ध है और दूसरे में नहीं, तो उसे INTERSECT के परिणाम सेट से हटा दिया जाएगा। इंटरसेक्ट क्वेरी इंटरसेक्ट क्वेरी से लौटाए गए पर

  1. MS SQL Server में डेटाबेस कैसे चुनें?

    आप नीचे दिए गए तरीकों में से किसी एक में काम करने के लिए MS SQL सर्वर में डेटाबेस का चयन कर सकते हैं। विधि 1:SQL सर्वर प्रबंधन स्टूडियो का उपयोग करें msdb, नामक डेटाबेस पर बैकअप इतिहास का चयन करने के लिए क्वेरी चलाएँ msdb चुनें जैसा कि नीचे चित्र में दिखाया गया है। डेटाबेस बैकअप अनुभाग में से चु

  1. माइक्रोसॉफ्ट एसक्यूएल सर्वर क्वेरी स्टोर

    Microsoft® SQL Server® क्वेरी स्टोर, जैसा कि नाम से पता चलता है, एस्टोर की तरह है जो निष्पादित प्रश्नों, क्वेरी रनटाइम निष्पादन आंकड़ों और निष्पादन योजनाओं के डेटाबेस इतिहास को कैप्चर करता है। चूंकि डेटा डिस्क पर संग्रहीत है, आप समस्या निवारण उद्देश्यों के लिए कभी भी क्वेरी स्टोर डेटा पुनर्प्राप्त क