oracle—運(yùn)算符

一、PL/SQL表達(dá)式與運(yùn)算符

  • 算數(shù)運(yùn)算符
運(yùn)算符 含義
+
-
*
/
** 乘方
  • 邏輯運(yùn)算符
運(yùn)算符 含義
AND 兩者同時(shí)為真,結(jié)果才為真
OR 有一個(gè)為真,結(jié)果就為真
NOT 取反
  • 比較運(yùn)算符
運(yùn)算符 含義
IS NULL 如果測試值為NULL,則返回值為true,否則為false
LIKE 比較字符串,結(jié)合 % 進(jìn)行模糊查詢
BETWEEN 測試值是否在指定的范圍內(nèi)
IN 測試值是否在一系列的值中
  • 關(guān)系運(yùn)算符
運(yùn)算符 含義
= 等于
!= <> ~= 不等于
< 、 <= 小于 小于等于
> 、 >= 大于 大于等于
  • 連接運(yùn)算符
運(yùn)算符 含義
11 用于連接兩個(gè)字符串

二、控制結(jié)構(gòu)

  • 順序結(jié)構(gòu)

  • 條件結(jié)構(gòu)

    • if
    if 條件1 then
        執(zhí)行語句1;
        執(zhí)行語句2;
    end if;
    
    • if else
    if 條件1 then
        執(zhí)行語句1;
        執(zhí)行語句2;
    else if =條件2 then
        執(zhí)行語句3;
    else 
        執(zhí)行語句4;
    end if;
    
  • CASE 結(jié)構(gòu)

當(dāng)分支比較多時(shí),使用case分支比較方便

```sql
case [表達(dá)式]
    when 條件1 then 結(jié)果1;
    when 條件2 then 結(jié)果2;
    ...
    else 結(jié)果;
end;
```
  • 循環(huán)結(jié)構(gòu)

    • loop

    如果不控制,oracle會一直執(zhí)行l(wèi)oop之間的語句,陷入死循環(huán)

    loop 
        執(zhí)行循環(huán)語句;
    end loop;
    
    • for
    for counter in 1..10 loop
        --測試一下,輸出counter
        dbms_output.put_line(counter);
    end loop;    ```
    
    * when
    ```sql
    when i <= 10 loop
        dbms_output.put_line(i);
        i := i + 1;
    end loop;
    
  • exit 循環(huán)退出

    • 無條件退出

    執(zhí)行到exit就直接退出循環(huán),繼續(xù)執(zhí)行

    loop 
        執(zhí)行語句;
        exit;
    end loop;
    
    • 有條件退出

    判斷條件是否為true,當(dāng)條件為true時(shí),退出循環(huán),繼續(xù)執(zhí)行。為false時(shí),將繼續(xù)執(zhí)行循環(huán)語句

    loop 
        執(zhí)行語句;
        exit when 條件1;
    end loop;
    
  • continue 繼續(xù)循環(huán)

    • 無條件繼續(xù)

    當(dāng)碰到continue時(shí),無條件的終止本次循環(huán),開始下一次的循環(huán)

    loop
        執(zhí)行語句1;
        continue;
        執(zhí)行語句2;
    end loop;
    
    • 有條件繼續(xù)

    當(dāng)碰到continue時(shí),判斷條件是否為true,如果為true時(shí),將終止本次循環(huán),開始下一次的循環(huán),如果為false,將繼續(xù)本次循環(huán)

    loop
        執(zhí)行語句1;
        continue when 條件;
        執(zhí)行語句2;
    end loop;
    
  • goto語句

    declare
        m varchar2(20);
    begin
        m := 'AndyThink';
        <<lable1\>\>
        dbms_output.put_line(m);
        goto lable1;
    end;
    
    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.PLSQL入門 Oracle數(shù)據(jù)庫對SQL進(jìn)行了擴(kuò)展,然后加入了一些編程語言的特點(diǎn),可以對SQL的執(zhí)行過程進(jìn)行...
    隨手點(diǎn)燈閱讀 687評論 0 8
  • 教程資料:http://www.w3ii.com/zh-CN/plsql/plsql_basic_syntax.h...
    xiang205012閱讀 551評論 0 0
  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個(gè)線程,因...
    小菜c閱讀 7,330評論 0 17
  • oracle存儲過程常用技巧 我們在進(jìn)行pl/sql編程時(shí)打交道最多的就是存儲過程了。存儲過程的結(jié)構(gòu)是非常的簡單的...
    dertch閱讀 3,616評論 1 12
  • 花謝還有重開日 月缺自有月圓時(shí) 我和你的分離 生生世世 難有再相聚 你就是我的VIP 你永遠(yuǎn)是我的ing 不許須臾...
    靈山閱讀 201評論 0 0

友情鏈接更多精彩內(nèi)容