Oracle IF-ELSE條件判斷結構


關於條件判斷的幾個函數:

一、IF-ELSE 判斷語句
1.IF 語法

IF 表達式 THEN
  ...
END IF;

輸入賬號名 kiki 以登陸賬號

declare
   v_name varchar2(20):='&x';
begin
   if v_name='kiki' then
      dbms_output.put_line('登錄成功');
   end if;
end;

結果

2.IF-ELSE 語法

IF 表達式 THEN
  ...
ELSE
  ...
END IF;

輸入用戶名 kiki 以登陸用戶,輸入用戶名錯誤,輸出登陸失敗。

declare
   v_name varchar2(20):='&name';
begin
   if v_name = 'kiki' then
     dbms_output.put_line('登錄成功');
   else
     dbms_output.put_line('登錄失敗');
   end if;
end;

3.IF...ELSIF...ELSE 語法 (注意 elsif 的拼寫)

IF 表達式 THEN
  ...
ELSIF 表達式 THEN
  ...
ELSE
  ...
END IF;

有兩個賬密kikijia、123;  kiki、123 輸入賬密以登陸。

declare
   v_name varchar2(20) := '&name';
   v_password number(10) := '&password';
begin
   if v_name = 'kikiwen' and v_password =123 then
      dbms_output.put_line('登錄成功');
   elsif v_name = 'kiki' and v_password =123 then
      dbms_output.put_line('登錄'||v_name||'賬號成功');
   else
      dbms_output.put_line('登錄失敗'||v_name||'賬號或者密碼不正確');
   end if;
end;

 

二、decode 函數

decode 函數基本語法:

decode(字段|表達式,條件1,結果1,條件2,結果2,...,條件n,結果n,缺省值);
--缺省值可以省略

 表示如果 字段|表達式 等於 條件1 時,DECODE函數的結果返回 條件1 ,...,如果不等於任何一個條件值,則返回缺省值

 

三、case...when... 函數

--簡單Case函數  
CASE sex  
WHEN '1' THEN ''  
WHEN '2' THEN ''  
ELSE '其他' END  

--Case搜索函數  
CASE
WHEN sex = '1' THEN ''  
WHEN sex = '2' THEN ''  
ELSE '其他' END  

函數使用方法拓展;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM