oracle中有case語句;該語句可以把表示式結果同提供的幾個可預見的結果作比較,如果比較成功,則執行對應的語句序列,語法為「case 表示式 when 表示式結果1 then 執行項[when 表示式結果2 then 執行項]...」。
本教程操作環境:windows10系統、oracle 11g版、dell g3電腦。
oracle中有case語句
case語句可以分為兩種型別:
一種是簡單的case語句,它給出乙個表示式,並把表示式結果同提供的幾個可預見的結果作比較,如果比較成功,則執行對應的語句序列。
另一種是搜尋式的case語句。它會提供多個布林表示式,然後選擇第乙個為true的表示式,執行對應的指令碼。
1.簡單case語句
簡單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:
執行過程與上邊相同。
從上邊來看,搜尋式的case語法如下:
case
when 條件1 then
語句塊1;
when 條件2 then
語句塊2;
else
語句塊3;
end case;執行過程中是,從上到下,依次看when 後邊的條件是否為true,true 則進入。
另外,上邊的else 如果不寫,假如沒有符合條件的when ,也會丟擲case_not_found 異常。
在oracle裡面寫case語句
例子 在乙個表 tablename 中由於乙個字段 flag 的取值不同,對另乙個字段 value 分別作多次sum.selectid,nvl sum case whenflagis null thenvalue end 0 value a,nvl sum case whenflagisnot nu...
case分支語句
case分支語句 匹配執行的方式,針對的變數預先存在的值,判斷該變數 實際取值是否和預設的值相匹配,如果匹配,就執行相應的操作 如果不匹配,就執行預先設定好的預設操作 語法結構 case 變數值 in 模式1 命令序列1 模式2 命令序列2 預設命令序列 esac bin bash read p 請...
case 條件語句
case 條件語句語法格式 case 變數 in值 1 指令1.值 2 指令2.指令3.esac 範例根據使用者輸入判斷使用者收入的是哪個數字 如果使用者輸入的是1 9的任易數字,則輸出對應輸入的數字 如果是其他數字級字元,則發回輸入不正確的提示,並退出 bin bash read p please...