*流程控制*
*條件分支(判斷)*
語法:
Begin
If 條件1 then 執行1
Elsif 條件2 then 執行2
Else 執行3
End if;
End;
If 條件1 then 執行1
Elsif 條件2 then 執行2 Else 執行3 End if;End;
注意:關鍵字 Elsif
小案例:--判斷emp表中的記錄** 是否超過20條,10-20之間,或者10條以下
**--判斷emp表中的記錄** **是否超過20條,10-20之間,或者10條以下**
declare
**--聲明變量接收emp表中的記錄數**
v_count number;
begin
select count(1) into v_count from emp;
if v_count > 20 then
dbms_output.put_line('emp表中的記錄數超過了20條為:' || v_count);
elsif v_count >= 10 then
dbms_output.put_line('emp表中的記錄數為10-20之間為:' || v_count);
else
dbms_output.put_line('emp表中的記錄數為10條以下為:' || v_count);
end if;
end;
執行結果:
emp表中的記錄數為10-20之間為:14
*循環*
在oracle中有三種循環方式,這里我們不展開,只介紹其中一種:loop循環
語法:
Begin
Loop
Exit when 退出循環條件
End loop;
End;
小案例:打印數字1-10
【示例】打印數字1-10
--打印數字1-10
declare
--聲明循環變量並賦初始值
v_num number :=1;
begin
loop
--退出循環的條件
exit when v_num >10;
dbms_output.put_line(v_num);
--循環變量自增
v_num :=v_num+1;
end loop;
end;
執行結果:
1
2
3
4
5
6
7
8
9
10
