एसक्यूएल सर्वर लीड () फ़ंक्शन

Esakyu Ela Sarvara Lida Fanksana



इस लेख में, हम आपको SQL सर्वर में लीड () फ़ंक्शन के साथ काम करने के मूल सिद्धांतों के बारे में बताएंगे। हम इसमें शामिल करेंगे कि फ़ंक्शन क्या करता है, इसका सिंटैक्स और इसका उपयोग कैसे करें के व्यावहारिक उदाहरण।

SQL सर्वर लीड फ़ंक्शन

SQL सर्वर में लीड फ़ंक्शन एक विश्लेषणात्मक फ़ंक्शन है जो आपको बिना किसी सेल्फ-जॉइन के उसी परिणाम सेट में बाद की पंक्ति से डेटा तक पहुंचने की अनुमति देता है।

फ़ंक्शन आपको वर्तमान पंक्ति से पहले दिए गए ऑफसेट पर एक पंक्ति तक पहुंचने में सक्षम बनाता है। उदाहरण के लिए, लीड फ़ंक्शन का उपयोग करके, आप वर्तमान पंक्ति के ठीक बाद की पंक्ति, वर्तमान पंक्ति से 10वीं पंक्ति आदि का पता लगा सकते हैं।







यह फ़ंक्शन डेटाबेस डेवलपर्स को जटिल कार्यों जैसे शामिल होने, विचारों का उपयोग करने आदि के बिना पंक्ति तुलना करने के लिए प्रेरित करता है।



फंक्शन सिंटैक्स

निम्नलिखित SQL सर्वर में लीड () फ़ंक्शन के सिंटैक्स को चित्रित करता है:



लीड (scalar_expression [ , ऑफसेट ] , [ डिफ़ॉल्ट ] )
ओवर ( [ पार्टीशन_बाय_क्लॉज ] ऑर्डर_बाय_क्लॉज )

बाद की सूची समर्थित तर्क और उनकी कार्यक्षमता है:





  1. scalar_expression - यह तर्क परिभाषित ऑफ़सेट के आधार पर वापसी मान को दर्शाता है। यह किसी भी प्रकार का व्यंजक हो सकता है जो एकल मान लौटाता है। हालांकि, स्केलर_एक्सप्रेशन का मान अन्य विश्लेषणात्मक/विंडो फ़ंक्शन नहीं हो सकता है।
  2. ऑफ़सेट - यह सेट करता है कि वर्तमान पंक्ति स्थिति से कितनी पंक्तियाँ प्राप्त हुई हैं। डिफ़ॉल्ट रूप से, फ़ंक्शन पंक्ति को तुरंत वर्तमान पंक्ति विशेषण के रूप में लाएगा। इसी प्रकार, ऑफ़सेट पैरामीटर का मान विश्लेषणात्मक फ़ंक्शन या नकारात्मक पूर्णांक नहीं हो सकता है।
  3. डिफ़ॉल्ट - यह पैरामीटर डिफ़ॉल्ट मान सेट करता है यदि प्रदान किया गया ऑफ़सेट मान लक्ष्य विभाजन के दायरे से बाहर है। डिफ़ॉल्ट रूप से, फ़ंक्शन NULL लौटाएगा।
  4. विभाजन द्वारा - विभाजन_द्वारा खंड उन नियमों को परिभाषित करता है जो परिणाम सेट को विभिन्न वर्गों में विभाजित करते हैं। फ़ंक्शन तब प्रत्येक परिणामी विभाजन पर लागू होता है।
  5. आदेश द्वारा - यह उस तार्किक क्रम को परिभाषित करता है जिसमें प्रत्येक विभाजन में पंक्तियों को लागू किया जाता है।

फ़ंक्शन स्केलर_एक्सप्रेशन में परिभाषित डेटा प्रकार लौटाता है। यदि लौटाया गया मान NULL है, तो फ़ंक्शन NULL लौटाता है।

नमूना डेटा

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



डेटाबेस मौजूद है तो ड्रॉप डेटाबेस;

डेटाबेस सूची बनाएँ;

सूची का प्रयोग करें;

DROP टेबल अगर उत्पाद मौजूद हैं;

तालिका उत्पाद बनाएं (
आईडी int पहचान प्राथमिक कुंजी शून्य नहीं है,
उत्पाद_नाम वर्कर (100),
निर्माता वर्कर (50),
मात्रा int शून्य नहीं है,
मूल्य int डिफ़ॉल्ट 0,
in_stock बिट
);
उत्पादों में डालें (उत्पाद_नाम, निर्माता, मात्रा, मूल्य, स्टॉक में)
मान ('Apple iPad Air', 'Apple', 100, 569.99, 1),
('सैमसंग गैलेक्सी जेड फ्लिप 4', 'सैमसंग', 302, 1569.00, 1),
('सोनी प्लेस्टेशन 5', 'सोनी',  500, 499.99, 1),
('सैमसंग गैलेक्सी वॉच-5 प्रो', 'सैमसंग', 600, 209/.99, 1),
('Apple Watch Series 6', 'Apple', 459, 379.90, 1),
('Apple AirPods Pro', 'Apple', 200, 199.99, 1),
('55' क्लास S95B OLED 4K स्मार्ट टीवी', 'सैमसंग', 900, 1999.90, 1),
('ओडिसी आर्क क्वांटम मिनी-एलईडी कर्व्ड गेमिंग स्क्रीन', 'सैमसंग', 50, 2999.90, 1);

परिणामी तालिका को दिखाया गया है:

उदाहरण 1 - परिणाम सेट पर SQL सर्वर लीड () फ़ंक्शन का उपयोग करना

नीचे दिया गया उदाहरण अगले उत्पाद की कीमत वापस करने के लिए लीड () फ़ंक्शन का उपयोग करता है।

चुनते हैं
प्रोडक्ट का नाम,
निर्माता,
मात्रा,
कीमत,
सीसा (कीमत,
1) से अधिक (
मात्रा द्वारा आदेश)
से
उत्पाद;

परिणाम तालिका:

चूंकि अंतिम कॉलम से कोई पंक्ति नहीं है, फ़ंक्शन NULL लौटाता है।

उदाहरण 2 - विभाजन सेट पर SQL सर्वर लीड () फ़ंक्शन का उपयोग करना

हम दिए गए विभाजन में अगला उत्पाद भी प्राप्त कर सकते हैं। उदाहरण के लिए, हम उपरोक्त डेटा को निर्माता के आधार पर विभाजित कर सकते हैं और प्रत्येक विभाजन में लीड () फ़ंक्शन लागू कर सकते हैं

एक उदाहरण चित्रण दिखाया गया है:

चुनते हैं
प्रोडक्ट का नाम,
निर्माता,
मात्रा,
कीमत,
सीसा (कीमत,
1) से अधिक (
निर्माता द्वारा विभाजन
मात्रा द्वारा आदेश)
से
उत्पाद;

उपरोक्त क्वेरी को निर्माता के आधार पर पंक्तियों को विभाजित करना चाहिए और प्रत्येक विभाजन में मानों के लिए अगली कीमत प्राप्त करनी चाहिए।

इस मामले में तीन विभाजन हैं।

निष्कर्ष

इस पोस्ट में, आपने SQL सर्वर में लीड () फ़ंक्शन के बिल्डिंग ब्लॉक्स को समझा। आपने यह भी सीखा कि परिणाम और विभाजन सेट पर लीड () फ़ंक्शन का उपयोग कैसे करें।