salaryAVGTHENDBMS" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

PL/SQL中的流程控制語句

系統 1888 0
一、條件控制語句
1、只有IF的條件控制語句
IF concition THEN
STATEMENTS;
END IF;
請看以下示例:
                
                  DECLARE

        salaryAVG number(7,2);

        empSalary number(7,2);

        BEGIN

        SELECT AVG(SAL) INTO salaryAVG FROM scott.emp;

        SELECT SAL INTO empSalary FROM scott.emp WHERE EMPNO=&eno;

        IF empSalary>salaryAVG THEN

        DBMS_OUTPUT.PUT_LINE('該職工工資超過了平均線'||salaryAVG);

        END IF;

        END;

        
                
              


2、IF、ELSE語句
IF condition THEN
STATEMENTS;
ELSE
STATEMENTS;
END IF;
請看以下示例:
                
                  DECLARE

        salaryAVG number(7,2);

        empSalary number(7,2);

        BEGIN

        SELECT AVG(SAL) INTO salaryAVG FROM scott.emp;

        SELECT SAL INTO empSalary FROM scott.emp WHERE EMPNO=&eno;

        IF empSalary>salaryAVG THEN

        DBMS_OUTPUT.PUT_LINE('該職工工資超過了平均線'||salaryAVG);

        ELSE

        DBMS_OUTPUT.PUT_LINE('該職工工資沒有超過平均線'||salaryAVG);

        END IF;

        END;

        
                
              


3、IF ESLEIF ELSE語句
IF condition THEN
STATEMENTS;
ELSIF ?
condition THEN?
STATEMENTS;
ELSE
STATEMENTS;
END IF;
請看以下示例:
                  
                    DECLARE

        empSalary number(7,2);

        BEGIN

        SELECT SAL INTO empSalary FROM scott.emp WHERE EMPNO=&eno;

        IF empSalary<2000 THEN

        DBMS_OUTPUT.PUT_LINE('需交稅0元');

        ELSIF empSalary<4000 THEN

        DBMS_OUTPUT.PUT_LINE('需交稅'||(empSalary*0.15-175)||'元');

        ELSE

        DBMS_OUTPUT.PUT_LINE('需交稅'||(empSalary*0.25-375)||'元');

        END IF;

        END;

        
                  
                


4、CASE語句
單一值進行比較:
CASE selector
WHEN expression1 THEN result1;
WHEN expression2 THEN result2;
WHEN expression3 THEN result3;
ELSE result4;
END CASE;
請看以下示例:
                  
                    DECLARE

        eno NUMBER(2);

        BEGIN

        eno:=&no;

        CASE eno

        WHEN 10 THEN DBMS_OUTPUT.PUT_LINE('部門1');

        WHEN 20 THEN DBMS_OUTPUT.PUT_LINE('部門2');

        WHEN 30 THEN DBMS_OUTPUT.PUT_LINE('部門3');

        ELSE DBMS_OUTPUT.PUT_LINE('沒有該部門');

        END CASE;

        END;

        --多重條件進行比較:

        CASE

        WHEN expression1 THEN result1;

        WHEN expression2 THEN result2;

        WHEN expression3 THEN result3;

        ELSE result4;

        END CASE;

        
                  
                


二、循環控制語句
1、LOOP循環
LOOP
STATEMENTS;
END LOOP
;
示例1:
                  
                    DECLARE

        a int;

        BEGIN

        a:=0;

        LOOP

        IF a=10 THEN

        EXIT;

        END IF;

        DBMS_OUTPUT.PUT_LINE(a);

        a:=a+1;

        END LOOP;

        END;

        
                  
                


示例2:
                  
                    DECLARE

        a int;

        BEGIN

        a:=0;

        LOOP

        EXIT WHEN a=10;

        DBMS_OUTPUT.PUT_LINE(a);

        a:=a+1;

        END LOOP;

        END;

        
                  
                


2、WHILE循環

示例1:
                  
                    DECLARE

        a int;

        BEGIN

        a:=0;

        WHILE a<10 LOOP

        DBMS_OUTPUT.PUT_LINE(a);

        a:=a+1;

        END LOOP;

        END;

        
                  
                


3、FOR循環

示例1:
                  
                    BEGIN

        FOR a IN 0..9 LOOP

        DBMS_OUTPUT.PUT_LINE(a);

        END LOOP;

        END;

        
                  
                


4、多重循環與標簽
示例1:
                  
                    DECLARE

        result INT;

        BEGIN

        <
                  
                  
                    
                      > FOR i IN 1..10 LOOP <
                    
                    
                      
                        > FOR j IN 1..10 LOOP result:=i*j; EXIT outer WHEN result=10; EXIT WHEN result=5; DBMS_OUTPUT.PUT_LINE('內:'||result); END LOOP inner; DBMS_OUTPUT.PUT_LINE('外:'||result); END LOOP outer; DBMS_OUTPUT.PUT_LINE('最后:'||result); END; 
                      
                    
                  
                


三、順序控制語句
1、GOTO語句
語法:GOTO labelName;
2、NULL語句
NULL;語句不執行任何操作,直接傳遞到下一條語句。

PL/SQL中的流程控制語句


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 桃江县| 汽车| 吉安市| 襄樊市| 观塘区| 阳朔县| 房产| 曲松县| 甘肃省| 娱乐| 察隅县| 普兰店市| 临沭县| 娄底市| 平原县| 望城县| 永嘉县| 多伦县| 呼和浩特市| 武宣县| 青州市| 渭源县| 永清县| 睢宁县| 枣强县| 贺州市| 崇州市| 海兴县| 岑溪市| 招远市| 贵德县| 锦州市| 玛多县| 刚察县| 略阳县| 大埔区| 扎兰屯市| 乌拉特前旗| 日喀则市| 刚察县| 嵩明县|