प्रोग्रामिंग में नियंत्रण प्रवाह प्राथमिक बिल्डिंग ब्लॉक्स में से एक है। यह उस क्रम को परिभाषित करता है जिसमें एक प्रोग्राम में विभिन्न कोड ब्लॉक निष्पादित किए जाते हैं।
अधिकांश प्रोग्रामिंग भाषाओं की तरह, Oracle PL/SQL भाषा विभिन्न नियंत्रण प्रवाह विवरण प्रदान करती है जैसे IF-THEN, CASE, FOR, WHILE, आदि।
इस पोस्ट में, हम सीखेंगे कि PL/SQL में CASE स्टेटमेंट के साथ कैसे काम किया जाए ताकि हमारे Oracle प्रश्नों में नियंत्रण प्रवाह का परिचय दिया जा सके।
CASE कथन का परिचय
CASE कथन आपको कथनों के अनुक्रम को परिभाषित करने की अनुमति देता है। केस स्टेटमेंट तब निर्दिष्ट स्थिति के आधार पर निष्पादित करने के लिए एक अनुक्रम का चयन करता है।
पठनीयता को बनाए रखते हुए इसे if-then ब्लॉक के सेट को घोषित करने का एक अधिक कुशल तरीका समझें।
हम Oracle में CASE स्टेटमेंट के सिंटैक्स को निम्न रूप में दर्शा सकते हैं:
मामलाजब स्थिति 1 तब परिणाम 1
जब स्थिति 2 तब परिणाम 2
...
अन्य परिणाम
अंत
CASE स्टेटमेंट इस सिंटैक्स में WHEN क्लॉज में प्रत्येक स्थिति का मूल्यांकन करता है।
यदि स्टेटमेंट को मैचिंग स्टेटमेंट मिलता है, तो यह मैचिंग रिजल्ट लौटाता है। हालाँकि, कुछ मामलों में, केस स्टेटमेंट को मेल खाने वाली स्थिति नहीं मिल सकती है। ऐसे परिदृश्य में, कथन उस परिणाम को क्रियान्वित करता है जिसे ELSE ब्लॉक में परिभाषित किया गया है।
टिप्पणी : ELSE ब्लॉक वैकल्पिक है। यदि अनुपलब्ध है, तो डेटाबेस इंजन निम्नलिखित सिंटैक्स का उपयोग करता है:
और कुछ:CASE_NOT_FOUND बढ़ाएं;
यह डेटाबेस इंजन को एक अपवाद उठाने और निष्पादन को रोकने की अनुमति देता है जब कोई मिलान स्थिति नहीं होती है।
उदाहरण 1: मामला विवरण मूल उदाहरण
यह उदाहरण ओरेकल में केस ऑपरेटर का मूल उदाहरण उपयोग दिखाता है:
घोषितआयु संख्या;
प्रवेश चार (10);
शुरू
उम्र := 24;
मामले की उम्र
जब 17 तब
प्रविष्टि : = 'अस्वीकृत';
जब 24 तब
प्रविष्टि := '9.99';
जब 45 तब
प्रविष्टि :='15.99';
और कुछ
प्रविष्टि: = 'अनुमति नहीं';
अंत का मामला;
DBMS_OUTPUT.PUT_LINE (प्रविष्टि);
अंत;
प्रदान किए गए चित्रण को किसी भी मिलान की स्थिति के लिए परीक्षण करना चाहिए और संबंधित स्थिति को वापस करना चाहिए। उदाहरण के लिए, चूंकि मैचिंग कंडीशन 24 है, क्लॉज इस प्रकार रिटर्न करता है:
9.99उदाहरण 2: डेटाबेस टेबल के साथ केस स्टेटमेंट
यह उदाहरण डेटाबेस तालिका के साथ केस स्टेटमेंट का उपयोग करता है।
प्रथम_नाम, अंतिम_नाम, वेतन चुनें,मामला
जब सैलरी 2500 तब 'हाई'
वरना 'अज्ञात'
वेतन_स्थिति के रूप में समाप्त करें
कर्मचारियों से;
प्रदान की गई क्वेरी कर्मचारियों की तालिका से वेतन सीमा का परीक्षण करने के लिए केस स्टेटमेंट का उपयोग करती है।
परिणामी मूल्य निम्न में दिखाया गया है:
निष्कर्ष
इस पोस्ट में, आपने सीखा कि विभिन्न स्थितियों का परीक्षण करने के लिए Oracle केस स्टेटमेंट का उपयोग कैसे करें और यदि कोई सत्य है तो कार्रवाई करें।