case when 怎么多条件判断来的
时间: 2023-07-22 14:38:53 浏览: 90
CASE WHEN语句是SQL语言中一种条件表达式,可以用于根据不同的条件返回不同的结果。它通常具有以下语法形式:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN condition3 THEN result3
...
ELSE default_result
END
```
其中,`condition1`、`condition2`、`condition3`等表示要判断的条件,`result1`、`result2`、`result3`等表示当条件成立时要返回的结果,`default_result`表示当所有条件都不成立时的默认返回结果。
CASE WHEN语句可以支持多个条件判断,即可以根据多个条件来返回不同的结果。例如:
```
SELECT
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 AND score < 90 THEN 'B'
WHEN score >= 70 AND score < 80 THEN 'C'
ELSE 'D'
END AS grade
FROM
student_scores;
```
上述SQL语句会根据学生的分数,将其转化为对应的等级(A、B、C、D)。其中,根据学生分数的不同,采用了多个条件判断来返回不同的结果。
相关问题
case when 多条件判断
以下是使用CASE WHEN进行多条件判断的示例:
1. 简单CASE函数格式:
```sql
SELECT orderId,
CASE state
WHEN '1' THEN '启动'
WHEN '2' THEN '关闭'
WHEN '3' THEN '待解锁'
WHEN '4' THEN '待解锁'
ELSE '未知状态'
END AS stateName
FROM t_table;
```
2. CASE搜索函数格式:
```sql
SELECT orderId,
CASE
WHEN state = '1' THEN '启动'
WHEN state = '2' THEN '关闭'
WHEN state IN ('3', '4') THEN '待解锁'
ELSE '未知状态'
END AS stateName
FROM t_table;
```
这两种格式都可以实现多条件判断,根据不同的条件值返回相应的显示值。简单CASE函数适用于只有一个条件参数的情况,而CASE搜索函数适用于有多个条件参数的情况。
case when多条件判断
在 SQL 中,可以使用 CASE WHEN 语句来实现多条件判断。语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
其中,`condition1`、`condition2` 等表示条件表达式,可以是任意表达式,返回值为布尔类型(TRUE 或 FALSE)。`result1`、`result2` 等表示条件满足时的结果,可以是任意数据类型。`default_result` 表示所有条件都不满足时的默认结果,也可以是任意数据类型。
下面是一个示例,根据不同的成绩等级返回对应的评价:
```
SELECT score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 70 THEN '一般'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS evaluation
FROM student;
```
这个语句会将学生表中的成绩按照不同的等级进行评价,并返回每个学生的评价结果。
阅读全文