MySQL IF ELSE जब अभिव्यक्ति का मूल्यांकन असत्य होता है, तो कथन एक बुनियादी सशर्त निर्माण को लागू करता है। इसका सिंटैक्स इस प्रकार है -
IF अभिव्यक्ति तब कथन;ELSE अन्य-कथन;END IF;
कथनों के अंत में अर्धविराम होना चाहिए।
IF ELSE . के उपयोग को प्रदर्शित करने के लिए MySQL संग्रहीत कार्यविधि के भीतर, हम निम्नलिखित संग्रहीत कार्यविधि बना रहे हैं जो नीचे दिखाए गए मानों पर आधारित है, 'student_info' नाम की तालिका के -
mysql> student_info से * चुनें; ---+| आईडी | नाम | पता | विषय |+------+---------+-----------+---------------+| 101 | यशपाल | अमृतसर | इतिहास || 105 | गौरव | जयपुर | साहित्य || 125 | रमन | शिमला | कंप्यूटर |+----------+---------+---------------+---------------+3 पंक्तियाँ सेट में (0.00 सेकंड)
निम्न क्वेरी से 'coursedetails_IFELSE' नाम की एक प्रक्रिया बनेगी, जिसमें IF ELSE स्टेटमेंट होंगे -
mysql> DELIMITER //;mysql> CREATE PROCEDURE coursedetails_IFELSE(IN S_Subject Varchar(20), OUT S_Course varchar(50)) -> BEGIN -> DECLARE Sub Varchar(20); -> उप में विषय चुनें -> छात्र_जानकारी से जहां S_Subject =विषय; -> IF Sub ='कंप्यूटर' तब -> SET S_Course ='B.Tech (CSE)'; -> ELSE -> SET S_Course ='विषय तालिका में नहीं है'; -> अंत अगर; -> END // क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.00 सेकंड)
अब, जब हम इस प्रक्रिया को लागू करते हैं तो हम नीचे परिणाम देख सकते हैं -
<पूर्व>mysql> सीमांकक; //mysql> कॉल coursedetails_IFELSE('Computers', @S_Course);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.00 सेकंड)mysql> @S_Course चुनें;+-------------+| @S_Course |+---------------+| बी.टेक (सीएसई) |+---------------+1 पंक्ति में सेट (0.00 सेकंड)mysql> कॉल coursedetails_IFELSE ('इतिहास', @S_Course);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित हैं ( 0.00 सेकंड)mysql> @S_Course चुनें;+--------------------------------+| @S_Course |+--------------------------------+| विषय तालिका में नहीं है |+--------------------------------+1 पंक्ति सेट में (0.00 सेकंड)पूर्व>