sql语言中case when怎么用
时间: 2023-11-19 21:27:23 浏览: 57
Case when语句可以用来在SQL查询中进行条件判断和分类操作。具体用法如下:
SELECT
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN condition3 THEN result3
...
ELSE default_result
END
FROM table_name;
其中condition1、condition2、condition3为条件,result1、result2、result3为对应的结果,default_result为默认结果,当所有条件都不满足时,返回默认结果。例如:
SELECT
EmpID,
Salary,
CASE
WHEN Salary<2000 THEN 'Low Salary'
WHEN Salary>=2000 AND Salary<5000 THEN 'Medium Salary'
WHEN Salary>=5000 AND Salary<10000 THEN 'High Salary'
ELSE 'Very High Salary'
END
FROM Employee;
以上例子中,根据员工的薪水水平进行分类,从而生成新的结果。
相关问题
sql语言的case when语法是什么
SQL中的CASE WHEN语句是一种条件表达式,用于根据特定条件返回不同的结果。基本结构如下:
```sql
CASE
WHEN condition1 THEN result1
[WHEN condition2 THEN result2]
[...]
ELSE default_result
END
```
这里解释一下各个部分:
1. `CASE` 开始一个条件判断块。
2. `WHEN condition1 THEN result1`:这是一个条件分支,如果`condition1`为真,那么就会返回`result1`。可以有多个这样的分支。
3. `ELSE default_result`:如果所有的`WHEN`条件都不满足,则会执行`default_result`这一部分。这是可选的,如果不指定,默认情况下CASE表达式返回NULL。
4. `END` 结束整个CASE语句。
例如,如果你想根据学生的分数等级给他们打分标签,你可以这样做:
```sql
SELECT
ID,
CASE
WHEN Score > 90 THEN 'A'
WHEN Score BETWEEN 80 AND 90 THEN 'B'
WHEN Score BETWEEN 70 AND 80 THEN 'C'
ELSE 'D'
END AS Grade
FROM Students;
```
在这里,`Score`字段会被检查,并根据每个条件分配相应的等级标签。
sql语言case when
`CASE WHEN` 是 SQL 中的一个条件表达式,用于根据特定的条件(`WHEN` 子句)返回不同的结果值。在 SQL 查询中,它被用来进行条件判断和数据转换。以下是 `CASE WHEN` 的基本语法:
```sql
CASE
WHEN condition1 THEN result1
[WHEN condition2 THEN result2]
[...]
ELSE default_result
END
```
- `condition1`, `condition2`, 等:是你想要测试的条件。如果这些条件为真,相应的 `result1` 或 `result2` 将会被返回。
- `result1`, `result2`: 分别是每个条件满足时返回的结果值。如果多个 `WHEN` 条件都成立,会返回第一个匹配的结果。
- `ELSE` 子句:如果所有 `WHEN` 条件都不满足,则执行 `ELSE` 后面的语句,返回默认结果。
`CASE WHEN` 常用在聚合函数如 `SUM`, `AVG`, `COUNT`, `MAX`, 和 `MIN` 等后面,对数据进行分组和转换,或者创建自定义的列。
阅读全文