Oracle PL/SQL में, WHILE LOOP स्टेटमेंट WHILE LOOP और END LOOP के बीच लिखे गए कोड को तब तक निष्पादित करता है जब तक कि कंडीशन सही न हो। नीचे मैं Oracle WHILE LOOP स्टेटमेंट के लिए कुछ उदाहरण दे रहा हूं।
सिंटैक्स
WHILE logical_condition LOOP -- some PL/SQL code END LOOP;
Oracle WHILE LOOP उदाहरण
<एच3>1. 10 बार लूप करें और टेबल प्रिंट करेंनिम्नलिखित उदाहरण में, WHILE LOOP कथनों को तब तक निष्पादित करेगा जब तक कि n_num चर का मान 10 से कम या उसके बराबर न हो। यह लूप के प्रत्येक पुनरावृत्ति के लिए n_num चर के मान को 1 से बढ़ाकर 2 की तालिका को प्रिंट करेगा।पी>
SET SERVEROUTPUT ON; DECLARE n_num NUMBER; n_table number := 2; BEGIN n_num := 1; WHILE n_num <= 10 LOOP DBMS_OUTPUT.put_line ('2 x ' || n_num || ' = '||(n_table * n_num)); n_num := n_num + 1; END LOOP; END; /
आउटपुट:
2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10 2 x 6 = 12 2 x 7 = 14 2 x 8 = 16 2 x 9 = 18 2 x 10 = 20 PL/SQL procedure successfully completed.<ब्लॉकक्वॉट>
n_num वेरिएबल के मान को बढ़ाना न भूलें, ताकि यह 10 तक पहुंच सके, अन्यथा यह अनंत लूप होगा।
<एच3>2. बूलियन वेरिएबल मान TRUE होने तक लूप करने के लिएनिम्नलिखित उदाहरण में, यह तब तक लूप करेगा जब तक कि b_run बूलियन वैरिएबल मान TRUE नहीं है और प्रत्येक पुनरावृत्ति के लिए n_num वैरिएबल मान को 1 से बढ़ाकर प्रिंट करेगा और जब n_num वेरिएबल का मान 5 से अधिक है तो b_run वेरिएबल को FALSE पर सेट करेगा। , ताकि WHILE LOOP अपना काम पूरा कर सके।
SET SERVEROUTPUT ON; DECLARE n_num NUMBER; b_run BOOLEAN := TRUE; BEGIN n_num := 1; WHILE b_run LOOP DBMS_OUTPUT.put_line (n_num || ' Times'); n_num := n_num + 1; IF n_num > 5 THEN b_run := FALSE; END IF; END LOOP; END; /
आउटपुट:
1 Times 2 Times 3 Times 4 Times 5 Times PL/SQL procedure successfully completed.<ब्लॉकक्वॉट>
इसके लिए भी, b_run चर मान को FALSE पर सेट करना न भूलें, अन्यथा यह अनंत लूप होगा। आप निकास; . भी लिख सकते हैं b_run :=FALSE; . के बजाय कथन लूप से बाहर निकलने के लिए ।
यह भी देखें:
- ओरेकल फॉर लूप रिवर्स उदाहरण
- कर्मचारी विवरण मुद्रित करने के लिए PL/SQL प्रोग्राम