oraclecase when 多个条件
时间: 2023-11-09 15:56:51 浏览: 119
在Oracle数据库中,使用CASE WHEN语句可以处理多个条件。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在这个语法中,可以有多个WHEN条件和对应的结果,直到遇到ELSE条件为止。如果不满足任何一个条件,就会返回ELSE后面的结果。
例如,假设我们有一个学生成绩表,其中包含学生的姓名、科目和分数。我们想要根据不同的分数范围来给学生评级,可以使用CASE WHEN语句来实现:
```
SELECT name,
score,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D'
END AS grade
FROM scores_table;
```
在这个例子中,当分数大于等于90时,评级为A;当分数大于等于80时,评级为B;当分数大于等于70时,评级为C;否则评级为D。
相关问题
oracle case when 多个条件
Oracle 中的 `CASE` 语句可以实现对多个条件的判断。语法格式如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
每个 `WHEN` 子句都有一个条件和一个结果,如果条件为真,则返回相应的结果。如果所有条件都不成立,则返回 `ELSE` 子句中的结果。
oracle case when 多个条件简写
在 Oracle 中,可以使用 CASE 表达式来完成多个条件的简写。具体语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
WHEN conditionN THEN resultN
ELSE result
END
```
其中,`condition1`、`condition2`、...、`conditionN` 是多个条件,`result1`、`result2`、...、`resultN` 是对应条件的结果,`result` 是默认结果。如果其中的某个条件成立,则返回对应的结果;如果所有条件都不成立,则返回默认结果。
例如,以下代码展示了一个简单的 CASE 表达式,如果 `age` 大于等于 18,则返回字符串 `'成年人'`,否则返回字符串 `'未成年人'`:
```
SELECT name, age,
CASE WHEN age >= 18 THEN '成年人' ELSE '未成年人' END AS status
FROM users;
```
注意,在 Oracle 中,CASE 表达式是可以嵌套的,这样可以实现更加复杂的逻辑。
阅读全文