oracle case when 怎麽使用
时间: 2023-08-16 12:09:53 浏览: 100
在Oracle中,CASE WHEN语句用于根据条件执行不同的操作或返回不同的值。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
在这个语法中,您可以定义多个WHEN条件,每个条件后面跟着要返回的结果。如果没有匹配的条件,则可以使用ELSE子句指定一个默认结果。
以下是一个简单的例子,说明了如何使用CASE WHEN语句:
```sql
SELECT
employee_id,
first_name,
last_name,
CASE
WHEN salary >= 5000 THEN 'High Salary'
WHEN salary >= 3000 THEN 'Medium Salary'
ELSE 'Low Salary'
END AS salary_category
FROM employees;
```
在上面的查询中,根据员工的薪水水平,使用CASE WHEN语句将其分为"High Salary"、"Medium Salary"和"Low Salary"三个类别,并将结果作为`salary_category`列返回。
您还可以在CASE WHEN语句中使用其他操作符和表达式,以满足更复杂的条件。例如,可以使用逻辑运算符(AND、OR)组合多个条件,并在THEN子句中执行其他操作。
相关问题
oracle case when使用
ORACLE中的CASE WHEN是一种条件表达式,可用于在SELECT语句中返回不同的结果,具体语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,condition1、condition2等是要检查的条件;result1、result2等是与每个条件相关的结果;ELSE子句是在所有条件都不满足时返回的结果。
例如,以下示例查询根据员工的工资级别返回不同的奖金:
```
SELECT last_name, salary,
CASE
WHEN salary >= 10000 THEN salary * 0.2
WHEN salary >= 5000 THEN salary * 0.1
ELSE salary * 0.05
END AS bonus
FROM employees;
```
以上查询将根据员工的工资级别返回不同的奖金,并将结果作为名为bonus的新列返回。
ORACLE CASE WHEN使用
ORACLE中的CASE WHEN是一种条件表达式,可用于在SELECT语句中返回不同的结果,具体语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,condition1、condition2等是要检查的条件;result1、result2等是与每个条件相关的结果;ELSE子句是在所有条件都不满足时返回的结果。
例如,以下示例查询根据员工的工资级别返回不同的奖金:
```
SELECT last_name, salary,
CASE
WHEN salary >= 10000 THEN salary * 0.2
WHEN salary >= 5000 THEN salary * 0.1
ELSE salary * 0.05
END AS bonus
FROM employees;
```
以上查询将根据员工的工资级别返回不同的奖金,并将结果作为名为bonus的新列返回。
阅读全文