oracle select if else语句_Oracle:Select语句_函数
时间: 2023-10-17 19:18:11 浏览: 133
在 Oracle 中,可以使用 CASE 表达式来实现类似于 if-else 语句的功能。语法如下:
```
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
FROM table_name;
```
其中,condition1、condition2 等都是条件表达式,result1、result2 等都是对应条件表达式为真时的结果,default_result 是当所有条件表达式均为假时的默认结果。
举个例子,假设我们有一个员工表 EMP,其中有一列 SALARY,我们想要查询每个员工的税后工资:
```
SELECT EMPNO, ENAME,
CASE
WHEN SALARY <= 5000 THEN SALARY * 0.9
WHEN SALARY <= 10000 THEN SALARY * 0.8
ELSE SALARY * 0.7
END AS AFTER_TAX_SALARY
FROM EMP;
```
这个语句会按照如下规则计算每个员工的税后工资:
- 如果 SALARY 不超过 5000,则税后工资为 SALARY 的 90%。
- 如果 SALARY 超过 5000 但不超过 10000,则税后工资为 SALARY 的 80%。
- 如果 SALARY 超过 10000,则税后工资为 SALARY 的 70%。
以上就是 Oracle 中实现类似于 if-else 语句的方法。另外,Oracle 还提供了其他的控制流函数,比如 DECODE 函数,可以实现类似于 switch-case 语句的功能。
阅读全文