• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    ORACLE中的結構控制(IF語句)

    ORACLE中有針對邏輯的節制語句,這些語句在日常的存儲過程、函數、、中應用比力普遍對其編程啟著主要的感化,可以完當作營業邏輯的框架部門。

    東西/原料

    • oracle
    • PLSQL

    IF語句簡介

    1. 1

      IF前提節制語句就是按照當前前提判定進入到哪一個步調中,當前提為真著進入一個流程,前提為假則進入別的一個流程。

      IF語句中有三種利用體例:IF....、IF..ELSE..、IF...ELSEIF....。按照現實環境矯捷運用

    IF..布局

    1. 1

      IF....布局

      語法:

      IF condition THEN 

        statements;

      END IF;

      注釋:IF.... 語句是最簡單的布局體例,他只有一個IF語句,當condition 為真時,程序將會執行statements,當condition 為假時,將跳過這一段

    2. 2

      例:計較9的6次冪是否大于50 0000,若是大于則輸出信息

      DECLARE 

      str1 number(10,0);

      BEGIN

      str1 := POWER(9,6);

      IF str1>500000 THEN

        DBMS_OUTPUT.PUT_LINE('9的6次冪大于50萬,其成果是:'||str1);

      END IF;

      END;

    3. 3

      代碼解析:

      第2行暗示聲明一個類型為number(10,0)的標量 str1 

      第4行暗示給變量str1 賦值為9的6次方

      第5-7行暗示判定,若是變量str1大于50萬,則執行第6行數據,若是不知足則跳過第6行

    IF..ELSE..布局

    1. 1

      語法:

      IF condition THEN 

        statements1;

      ELSE

       statements2;

      END IF;

      注釋:當condition 為真時,程序將會執行statements1,當condition 為假時,程序將會執行statements2

    2. 2

      例:計較9的5次冪是否大于50 0000,輸出其信息

      DECLARE 

      str1 number(10,0);

      BEGIN

      str1 := POWER(9,5);

      IF str1>500000 THEN

        DBMS_OUTPUT.PUT_LINE('9的5次冪大于50萬,其成果是:'||str1);

       ELSE

        DBMS_OUTPUT.PUT_LINE('9的5次冪小于50萬,其成果是:'||str1);

      END IF;

      END;

    3. 3

      代碼解析:

      第2行暗示聲明一個類型為number(10,0)的標量 str1 

      第4行暗示給變量str1 賦值為9的5次方

      第5-6行暗示判定,若是變量str1大于50萬為真,則執行第6行數據

      第7-8行對應第5-6行,若是變量str1大于50萬為假,則執行

    IF...ELSEIF....布局

    1. 1

      語法:

      IF condition1 THEN 

        statements1;

      ELSIF condition2 THEN

       statements2;

      ...

      [ELSE statements]

      END IF;

      注釋:當condition1 為真時執行statements1

      當condition1 為假時則判定condition2是否為真,為真時則執行statements2,為假時則執行后面的判定或者else或者退出

    2. 2

      例:隨機獲取一個100--200的隨機數,判定其地點的規模

      DECLARE

        STR1 NUMBER(10);

      BEGIN

        STR1 := DBMS_RANDOM.VALUE(100,200);

        IF STR1>=100 AND  STR1<130 THEN

          DBMS_OUTPUT.PUT_LINE('STR1的值在100--130規模內');

         ELSIF STR1>=130 AND  STR1<160 THEN

          DBMS_OUTPUT.PUT_LINE('STR1的值在130--160規模內');

         ELSIF STR1>=160 AND  STR1<190 THEN

          DBMS_OUTPUT.PUT_LINE('STR1的值在160--190規模內');

         ELSE

          DBMS_OUTPUT.PUT_LINE('STR1的值在190--200規模內'); 

        END IF;

      END;

    3. 3

      代碼解析:

      第2行:聲明一個NUMBER型變量STR1

      第4行:給STR1賦值一個隨機數,規模是100-200之間

      第5-6行:判定STR1是否大于100小于130,若是為真則輸出第6行,為假則往下進行第7步判定

      第7-10行:與上訴一樣,前提為真則輸出,前提為假則繼續標的目的下判定

      第11行:若是以上前提都為假,則輸出12行信息

    • 發表于 2019-07-10 20:03
    • 閱讀 ( 876 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    admin
    admin

    0 篇文章

    作家榜 ?

    1. xiaonan123 189 文章
    2. 湯依妹兒 97 文章
    3. luogf229 46 文章
    4. jy02406749 45 文章
    5. 小凡 34 文章
    6. Daisy萌 32 文章
    7. 我的QQ3117863681 24 文章
    8. 華志健 23 文章

    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆