PL-SQL中的条件分支

2009-12-13
--INTEGER STRING NUMBER VARCHAR2...

 --一个简单的存储过程

SET SERVEROUTPUT ON SIZE 1000 
DECLARE
   x varchar2(20);
   y varchar2(20):='Today is 2009-12-13';
   z STRING(20):='String Test';
   a INTEGER:=123;
 BEGIN
   x:='hello world';
   DBMS_OUTPUT.PUT_LINE(X);
   DBMS_OUTPUT.PUT_LINE(y);
   DBMS_OUTPUT.PUT_LINE(z);
   DBMS_OUTPUT.PUT_LINE(a);
   DBMS_OUTPUT.PUT_LINE(x||' -- '||y);
 END;
 /

 

--分支
  --IF分支
 

DECLARE
   a number;
   b varchar2(20);
 BEGIN
   a:=5;
   IF A=1 THEN
  b:='A的值为1';
    ELSIF a=2 THEN
  b:='A的值为2';
    ELSE
  b:='A的值既不为1也不为2';
   END IF;
   DBMS_OUTPUT.PUT_LINE(b);
  END;
 /

 

 --CASE分支
 

DECLARE
   a number;
   b varchar2(20);
 BEGIN
   a:=5;
   CASE
    WHEN a=1 THEN b:='A的值为1';
    WHEN a=2 THEN b:='A的值为2';
    ELSE b:='A的值既不为1也不为2';
   END CASE;
   DBMS_OUTPUT.PUT_LINE(b);
  END;
 /

 

你可能感兴趣的:(sql)