首頁  >  文章  >  資料庫  >  oracle中有case語句嗎

oracle中有case語句嗎

WBOY
WBOY原創
2022-05-31 10:34:253276瀏覽

oracle中有case語句;該語句可以把表達式結果同提供的幾個可預見的結果作比較,如果比較成功,則執行對應的語句序列,語法為「CASE 表達式WHEN 表達式結果1 THEN 執行項[WHEN 表達式結果2 THEN 執行項]...」。

oracle中有case語句嗎

本教學操作環境:Windows10系統、Oracle 12c版、Dell G3電腦。

oracle中有case語句嗎

oracle中有case語句

case語句可以分成兩種類型:

一種是簡單的case語句,它給出一個表達式,並且把表達式結果同提供的幾個可預見的結果作比較,如果比較成功,則執行對應的語句序列。

另一種是搜尋式的case語句。它會提供多個布林表達式,然後選擇第一個為true的表達式,執行對應的腳本。

1.簡單case語句

  簡單case的語法如下:

oracle中有case語句嗎

##  分別輸入1 、2 呼叫後的結果如下:

匿名块已完成
男人
匿名块已完成
女人

  從上邊來看,case 的簡單語法如下:

case 标志
when 参数1 then
语句块1;
when 参数2 then
语句块2;
else
语句块3;
end case;

  執行過程中是,從上到下,依序拿when 後邊的參數,分別與上邊的標誌比較,相等則進入。

  另外,上邊的else 如果不寫,假如沒有符合條件的when ,則會拋出CASE_NOT_FOUND 異常。

2.搜尋式case語句

  搜尋式case與簡單式差不多,只不過是搜尋式的這種,case後邊是沒有參數的。

將上邊的例子,修改後如下,即是搜尋式case:

oracle中有case語句嗎

#  執行過程與上邊相同。

  從上邊來看,搜尋式的case語法如下:

case 
when 条件1 then
语句块1;
when 条件2 then
语句块2;
else
语句块3;
end case;

  執行過程中是,從上到下,依序看when 後邊的條件是否為true,true 則進入。

  另外,上邊的else 如果不寫,假如沒有符合條件的when ,也會拋出CASE_NOT_FOUND 異常。

推薦教學:《

Oracle影片教學

以上是oracle中有case語句嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn