Oracle儲存過程乾貨(二):PLSQL控制語句
---if then els if end if, 單條件判斷 ---
declare v_grade char(1); begin v_grade := 'B'; if v_grade = 'A' then dbms_output.put_line('哥真牛逼'); else dbms_output.put_line('哥還得加油'); end if; end; /
---if then elsif then else end if, 多條件判斷 ---
declare v_grade char(1); begin v_grade := 'X'; if v_grade = 'A' then dbms_output.put_line('哥是優等生'); elsif v_grade = 'B' then dbms_output.put_line('哥成績一般'); elsif v_grade = 'C' then dbms_output.put_line('哥是拖後腿'); else dbms_output.put_line('哥不能用成績衡量'); end if; end; /
---case when end case 判斷 ---
declare v_grade char(1); begin v_grade := 'A'; case when v_grade = 'A' then dbms_output.put_line('哥是優等生'); when v_grade = 'B' then dbms_output.put_line('哥成績一般'); when v_grade = 'C' then dbms_output.put_line('哥是吊車尾'); else dbms_output.put_line('哥不能用成績衡量'); end case; end;
留了思考題,大家可以先嚐試自己做,再看答案。
問題:請大家分別用if和case when的方法返回如下對應資訊
工資在700-1200,返回:工資真tm低,要不要人活了!
工資在1200-1500,返回:工資好低
工資在1500-3000,返回:剛好能活下去
工資高於3000,返回:哥真牛逼
- - - - - - -
答案
1、---用if then elsif判斷員工編號的生存情況---
declare v_sal number; begin select sal into v_sal from emp where empno = 7839; if v_sal >= 700 and v_sal<1200 then dbms_output.put_line('工資真tm低,要不要人活了!'); elsif v_sal >= 1200 and v_sal<1500 then dbms_output.put_line('工資好低'); elsif v_sal >= 1500 and v_sal<3000 then dbms_output.put_line('剛好能活下去'); elsif v_sal > 3000 then dbms_output.put_line('哥很牛逼!'); end if; end; /
2、---用case when判斷員工編號的生存情況---
declare v_sal number; begin select sal into v_sal from emp where empno = 7839; case when v_sal >= 700 and v_sal < 1200 then dbms_output.put_line('工資真tm低,沒法活了'); when v_sal >= 1200 and v_sal < 1500 then dbms_output.put_line('工資好低'); when v_sal >= 1500 and v_sal < 3000 then dbms_output.put_line('剛好夠活'); when v_sal > 3000 then dbms_output.put_line('哥真牛逼'); end case; end; /
來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70013625/viewspace-3008219/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle儲存過程乾貨(三):PLSQL迴圈語句Oracle儲存過程SQL
- oracle 儲存過程以及plsql語句塊Oracle儲存過程SQL
- Oracle儲存過程乾貨(一):儲存過程基礎Oracle儲存過程
- oracle plsql儲存過程OracleSQL儲存過程
- Oracle 儲存過程中的DDL語句Oracle儲存過程
- MySQL儲存過程語句及呼叫MySql儲存過程
- oracle plsql package_body_procedure_構建語法_sp_儲存過程OracleSQLPackage儲存過程
- Oracle儲存過程基本語法Oracle儲存過程
- oracle plsql儲存過程_運算子優先順序OracleSQL儲存過程
- PostgreSQL獲取建表語句儲存過程SQL儲存過程
- EF中使用SQL語句或儲存過程SQL儲存過程
- oracle儲存過程plsql_sp_多個out引數測試語法Oracle儲存過程SQL
- oracle plsql儲存過程_if判斷與事務commitOracleSQL儲存過程MIT
- oracle plsql儲存過程_while loop_end loop_exitOracleSQL儲存過程WhileOOP
- 儲存過程 與 SQL Server語句大比拼儲存過程SQLServer
- 在.NET中用儲存過程執行SQL語句儲存過程SQL
- Oracle儲存過程Oracle儲存過程
- 通過SQL語句提取儲存過程中的內容SQL儲存過程
- PLSQL學習-【7儲存過程、函式】SQL儲存過程函式
- PLSQL學習——控制語句SQL
- oracle plsql儲存過程除錯出錯_PLS-00361OracleSQL儲存過程除錯
- 儲存過程語法儲存過程
- oracle之PLSql語言(二)sql語句的使用OracleSQL
- 儲存過程if,for,while語句,陣列和遊標使用儲存過程While陣列
- Oracle儲存過程-1Oracle儲存過程
- oracle的儲存過程Oracle儲存過程
- Oracle儲存過程例子Oracle儲存過程
- Oracle建立儲存過程Oracle儲存過程
- ORACLE 儲存過程示例Oracle儲存過程
- 在toad_plsql developer_oracle sql developer呼叫儲存過程SQLDeveloperOracle儲存過程
- 儲存過程基本語法儲存過程
- 從sybase的儲存過程轉向oracle的儲存過程儲存過程Oracle
- Mysql儲存過程 變數,條件,迴圈語句用法MySql儲存過程變數
- asp.net分頁的SQL語句及儲存過程ASP.NETSQL儲存過程
- mySQL語法中的儲存過程及if語句的使用簡例MySql儲存過程
- 原創:oracle 儲存過程Oracle儲存過程
- oracle 儲存過程批次提交Oracle儲存過程
- oracle 儲存過程學習Oracle儲存過程