PL/SQL 条件控制语句

1、if-then 语句

语法:

IF 条件 THEN
     语句序列;
END IF;

实例:

DECLARE 
   i number(2) := 10; 
BEGIN 
   IF i < 20 THEN
     dbms_output.put_line('True');
   END IF;
END; 

2、if-then-else 语句

语法:

IF 条件 THEN
     语句序列1;
ELSE
     语句序列2;
END IF;

实例:

DECLARE 
   i number(2) := 10; 
BEGIN 
   IF i < 10 THEN
     dbms_output.put_line('True');
   ELSE
     dbms_output.put_line('False');
   END IF;
END; 

3、if-then-elsif 语句

语法:

IF 条件1 THEN
     语句序列1;
ELSIF 条件2 THEN
     语句序列2;
ELSE
     语句序列3;
END IF;

实例:

DECLARE 
   i number(2) := 10; 
BEGIN 
   IF i < 10 THEN
     dbms_output.put_line('True1');
   ELSIF i < 20 THEN
     dbms_output.put_line('True2');
   ELSE
     dbms_output.put_line('False');
   END IF;
END; 

注:可以在一个IF-THENIF-THEN-ELSIF语句中使用另一个IF-THENIF-THEN-ELSIF语句。

4、case 语句

语法:

CASE selector 
   WHEN 'value1' THEN 语句序列1; 
   WHEN 'value2' THEN 语句序列2; 
   WHEN 'value3' THEN 语句序列3; 
   ... 
   ELSE 语句序列n;  -- default case 
END CASE;

实例:

DECLARE
  sex CHAR(1) := '1';
BEGIN
  CASE sex 
    WHEN '1' THEN dbms_output.put_line(''); 
    WHEN '2' THEN dbms_output.put_line('');   
    ELSE dbms_output.put_line('RY');  
  END CASE;
END;

5、搜索 case 语句

语法:

CASE 
   WHEN selector = 'value1' THEN 语句序列1; 
   WHEN selector = 'value2' THEN 语句序列2; 
   WHEN selector = 'value3' THEN 语句序列3; 
   ... 
   ELSE 语句序列n;  -- default case 
END CASE;

实例:

DECLARE
  sex CHAR(1) := '1';
BEGIN
  CASE 
    WHEN sex = '1' THEN dbms_output.put_line(''); 
    WHEN sex = '2' THEN dbms_output.put_line('');   
    ELSE dbms_output.put_line('RY');  
  END CASE;
END;

 

posted @ 2018-08-27 10:21  寒爵  阅读(1720)  评论(0编辑  收藏  举报