(1)if語句
if then
[elsif (條件表示式2)then
{語句序列2;)]
[else
{語句序列3;)]
endif;
需要注意的是,上述命令格式中elseif的拼寫裡只有乙個e,不是elseif,而是elsif三種用法舉例:
1.if…then
if a=40 then
insert
into temp_table values(name,birthday);
endif;
2.if…then…elseif a>=40
then
insert into elder_table values(name,birthday);
else
insert into younger_table values(name,birthday);
endif;
3.if…then…elseifif score>90
then
score:=score-5;
elsif score<60
then
score:=score+5;
endif;
(2)case語句
case結構是oracle 9i後新增加的內容,類似於c中的switch語句,格式如下:
case 檢測表示式
when 表示式1 then 語句序列1
when 表示式2 then 語句序列2
...[else 其他語句序列]
end;
其中,case語句中的else子句是可選的,如果檢測表示式的值與下面任何乙個表示式的值都不匹配時,pl/sql會產生預定義錯誤case_not_fount。
例如:
declare
str varchar2(20):='b';
numb number(1);
begin
numb:=case str
when
'a'then
1when
'b'then
2when
'c'then
3else
4end;
dbms_output.put_line(numb);
end;
輸出:2如果var_a為null的話,那麼
var_a>1;
var_a<1;
都是不成立的。所以這時候應該有乙個null的判斷。語句為:
if var_a is null then
...
(1)loop…exit…end loop語句
這是乙個迴圈控制語句,關鍵字loop和end表示迴圈執行的語句範圍,exit關鍵字表示退出迴圈,它常常在乙個if判斷語句中。
例如:
c:=0; --迴圈標誌變數
loop
if c>5
then
--如果c大於5則退出迴圈
exit;
endif; c:=c+1;
endloop;
(2)loop…exit when…end loop語句
表示當when後面判斷為真時退出迴圈。
例如:
c:=0;
loop
exit
when c>5; --注意此處有個省略號
c:=c+1;
endloop;
(3) while…loop…end loop語句
該語句也是控制迴圈,不過是先判斷再進入迴圈,而不是像前兩個一樣是可以設定exit的位置來選擇。
c:=0;
while c<=5
loop
c:=c+1;
endloop;
(4) for…in…loop…end loop語句
這是個預知迴圈次數的迴圈控制語句。
例如,下邊這個程式和上邊那個的執行結果是一樣的:
c:=0;
for a in
0..5
loop
--c從0到5進行迴圈(注意是兩個點)
c:=c+1;
endloop;
學習書籍:《oracle+11g從入門到精通》 選擇結構和迴圈結構
一 if if else if else if else if else 三種,都是對boolean表示式判斷 switch 裡面是乙個表示式就行,對結果進行常量判斷,若干個case常量break,最後 default break,二 迴圈結構 1 普通for迴圈 2 while迴圈 4 三種迴圈的...
選擇和迴圈結構
一 if else if else 只會執行其中的乙個分支,其他分支會被繞開。二執行switch語句時,遇到了符合的case後,如果沒有break,會執行接下來的所有case中的 不會再判斷case是否符合switch的表示式 包括default語句,除非遇到break int a1 1 int a...
Python 選擇結構 和迴圈結構
一 選擇結構 cunkuan 60 1.簡單if判斷 if cunkuan 100 print 可以買寶馬!須縮排 print 好開心!else 後面不要跟條件 print 還是騎自行車吧 2.多條件判斷 cunkuan 60 if cunkuan 100 print 買寶馬 elif cunkua...