plsql case when
时间: 2023-08-17 20:15:34 浏览: 150
在PL/SQL中,CASE WHEN语句用于根据条件执行不同的操作。它的语法可以有两种形式。第一种形式是在CASE语句中使用条件和结果,如下所示:
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END CASE;
第二种形式是在SELECT语句中使用CASE WHEN语句,如下所示:
SELECT SUM(CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE default_result
END)
FROM table_name;
在这个例子中,根据条件t3.LOCAL_BF_KND='111000',选择计算t1.FAV_FEE的总和。如果条件成立,则将t1.FAV_FEE加入总和,否则将0加入总和。[2]
另外一个例子展示了在PL/SQL中使用CASE WHEN语句统计特定年份入职员工的个数。根据不同的年份,将相应的计数器加1。[3]
相关问题
plsql case when用法
在PL/SQL中,CASE WHEN语句可以根据条件执行不同的操作。有两种语法形式可以使用:
语法1:CASE search_expression WHEN expression1 THEN result1 WHEN expression2 THEN result2 .... WHEN expressionN THEN resultN ELSE default_result END CASE; [3]
在这种语法中,search_expression是一个表达式,expression1到expressionN是一系列条件,result1到resultN是与每个条件对应的结果。如果search_expression与其中某个条件相匹配,则返回对应的结果。如果都没有匹配的条件,返回default_result。
语法2:CASE WHEN condition1 THEN result1 WHEN condistion2 THEN result .... WHEN condistionN THEN resultN ELSE default_result END CASE; [2]
在这种语法中,condition1到conditionN是一系列条件,result1到resultN是与每个条件对应的结果。根据每个条件的结果进行判断,如果条件为真,则返回对应的结果。如果所有条件都为假,返回default_result。
使用CASE WHEN语句可以方便地根据不同的条件执行不同的逻辑。请根据具体的需求选择合适的语法形式。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [PLSQL case when then else](https://blog.csdn.net/xldmx/article/details/81453825)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
plsql case when排查非数字
您可以使用PL/SQL的CASE WHEN语句来排查非数字。以下是一个示例:
```sql
DECLARE
input_value VARCHAR2(100) := '12345';
BEGIN
CASE
WHEN REGEXP_LIKE(input_value, '^[0-9]+$') THEN
DBMS_OUTPUT.PUT_LINE('输入值为数字');
ELSE
DBMS_OUTPUT.PUT_LINE('输入值不是数字');
END CASE;
END;
```
在上面的示例中,我们使用`REGEXP_LIKE`函数和正则表达式`^[0-9]+$`来检查输入值是否全是数字。如果是,就输出"输入值为数字";否则,输出"输入值不是数字"。您可以根据实际需求修改输入值和输出信息。
阅读全文