--else if
declare
sals number;
begin
select sal into sals from emp where empno=&empno;
if sals<2000 then
dbms_output.put_line('掙得不多,需努力');
else
if sals<5000 then
dbms_output.put_line('收入還可以,還需努力');
else
dbms_output.put_line('掙得挺多了,歇歇吧');
end if;
end if;
end;
select null+1 from dual;
select null||1 from dual;
--if elsif end if
--從鍵盤獲取2個數,判斷大小
declare
v_num1 number;
v_num2 number;
begin
v_num1:=&n1;
v_num2:=&n2;
if v_num1>v_num2 then
dbms_output.put_line(v_num1||'>'||v_num2);
else
dbms_output.put_line(v_num1||'<'||v_num2);
end if;
--方式1
if v_num1>5 then
dbms_output.put_line(v_num1||'>5');
else
if v_num1>3 then
dbms_output.put_line(v_num1||'>3');
end if;
end if;
--方式2
if v_num1>5 then
dbms_output.put_line(v_num1||'>5');
elsif v_num1>3 then
dbms_output.put_line(v_num1||'>3');
end if;
end;
-- case when語句
declare
v_grade char(1):=upper('&grade');
v_result varchar2(50);
begin
case v_grade
when 'a' then v_result:='相當的靠譜';
when 'b' then v_result:='有點靠譜';
when 'c' then v_result:='靠譜';
else v_result:='相當的不靠譜';
end case;
dbms_output.put_line('你的成績:'||v_result);
end;
--迴圈
--無條件迴圈
loop
exit when
end loop;
--從1+2+....結果為10的時候退出迴圈
declare
v_count number:=0;
i number:=1;
begin
loop
v_count:=v_count+i;
i:=i+1;
exit when v_count=10;
end loop;
dbms_output.put_line('i='||i);
dbms_output.put_line('v_count='||v_count);
end;
--while迴圈
while 《條件》 loop
end loop;
declare
v_count number:=0;
i number:=1;
begin
while v_count<10 loop
v_count:=v_count+i;
i:=i+1;
end loop;
dbms_output.put_line('i='||i);
dbms_output.put_line('v_count='||v_count);
end;
--for 迴圈
declare
begin
for i in 1..10 loop
dbms_output.put_line('i='||i);
end loop;
end;
declare
begin
for i in reverse 1..10 loop
dbms_output.put_line('i='||i);
end loop;
end;
--不建議使用goto語句
declare
v_count number:=1;
begin
loop
v_count:=v_count+1;
if v_count>=10 then
goto end_loop;
end if;
end loop;
<>
dbms_output.put_line('v_count='||v_count);
end;
不要忘記end if、end loop Oracle PL SQL控制結構
oracle pl sql控制結構 pl sql是面向過程的語言,存在針對邏輯的控制語言。主要的邏輯控制語句有if if.else.if.elif.巢狀if case loop while.loop for.loop cursor for loop。一 if條件控制語句 if語句有三種使用方式 if...
Oracle PL SQL之LOOP迴圈控制語句
在pl sql中可以使用loop語句對資料進行迴圈處理,利用該語句可以迴圈執行指定的語句序列。常用的loop迴圈語句包含3種形式 基本的loop while.loop和for.loop。loop語句的基本語法結構如下 loop statement.end loop label name 語法說明 l...
Oracle PL SQL語言基礎 控制語句
預定義異常種類 異常處理 異常說明 access into null 在未初始化物件時出現 case not founf 在case 語句中的選項與使用者輸入的資料不匹配時出現 collection is null 在給尚未初始化的表或陣列賦值時出現 cursor already open 使用者試...