PL/SQL 条件语句

来源:互联网 发布:sql server要钱吗 编辑:程序博客网 时间:2024/05/18 00:39

 1.IF...THEN语句(最简单的IF语句)

SQL> set serveroutput onSQL> declare  2  number1 integer:=90;  3  number2 integer:=60;  4  begin  5  if number1>=number2 then  6  dbms_output.put_line(number1 || '>=' || number2);  7  end if ;  8  end;  9  /

结果:

90>=60
PL/SQL 过程已成功完成。


2. IF...THEN...ELSE条件语句

SQL> set serveroutput onSQL> declare  2  number1 integer:=80;  3  number2 integer:=90;  4  begin  5  if number1>=number2 then  6  dbms_output.put_line(number1 || '>=' || number2);  7  else  8  dbms_output.put_line(numbr1 || '<' || number2);  9  end if; 10  end; 11  /

3. IF...THEN...ELSIF条件语句

    IF...THEN...ELSIF语句实现了IF语句的嵌套,从而实现了判定两个以上的判断语句

set serveroutput on declare year_date number; leap Boolean; begin year_date:=2010; if mod(year_date,4) <> 0 then leap:=false; elsif mod(year_date,100) <> 0 then leap:=true; elsif mod(year_date,400) <> 0 then leap:=false; else leap:=true; end if; if leap then dbms_output.put_line(year_date || '是闰年'); else dbms_output.put_line(year_date || '是平年'); end if; end; /


结果:

2010是平年


4.CASE条件语句

     CASE 语句的执行方式与IF语句相似。CASE语句从关键字CASE开始,后面跟着一个选择器,它通常是一个变量。接下来是WHEN子句,它将根据选择器的值执行不同的PL/SQL语句。

SQL> set serveroutput onSQL> declare  2  i number:=0;  3  begin  4  while i<5 loop  5  case i  6  when 0 then  7  dbms_output.put_line('i 是 0');  8  when 1 then  9  dbms_output.put_line('i 是 1'); 10  when 2 then 11  dbms_output.put_line('i 是 2'); 12  else 13  dbms_output.put_line('i 是比2更大的数'); 14  end case; 15  i:=i+1; 16  end loop; 17  end; 18  /

结果:

i 是 0
i 是 1
i 是 2
i 是比2更大的数
PL/SQL 过程已成功完成。



0 0
原创粉丝点击