IF UPPER(v_last_name) =‘SCOTT’ THEN
v_mgr := 102;
END IF;
DECLARE
v1 DATE := to_date('12-11-1990','mm-dd-yyyy');
v2 BOOLEAN;
BEGIN
IF MONTHS_BETWEEN(SYSDATE,v1) > 5 THEN
v2 := TRUE;
dbms_output.put_line('true');
ELSE
v2 := FALSE;
dbms_output.put_line('false');
END IF;
end;
/
Case 语句
DECLARE
v1 CHAR(1) := UPPER('&v1');
v2 VARCHAR2(20);
BEGIN
v2 :=CASE v1
WHEN 'A' THEN 'Excellent'
WHEN 'B' THEN 'Very Good'
WHEN 'C' THEN 'Good'
ELSE 'No such grade'
END;
DBMS_OUTPUT.PUT_LINE ('级别为: '|| v1 || '是 ' || v2);
END;
/
基本循环 loop
Drop table t1 purge;
create table t1 (c1 number(2));
Select * from t1;
循环1
Declare
V1 number(2) :=1;
Begin
Loop
Insert into t1 values(v1);
v1:=v1+1;
Exit When v1>10 ;
End loop;
End;
/
循环2
declare
v1 number(2) :=1;
begin
while v1<=10 loop
Insert into t1 values(v1);
v1:=v1+1;
end loop;
end;
/
循环3
declare
v1 number(2):=1;
begin
for v1 in 1..9 loop
Insert into t1 values(v1);
end loop;
end;
/