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  

函数使用方法拓展;

原文地址:https://www.cnblogs.com/jiaxinwei/p/10311477.html