case when用法
时间: 2023-11-07 19:58:18 浏览: 41
CASE WHEN是SQL中的一种条件语句,用于在查询结果中根据条件进行分组或分类。它的基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE else_result
END
```
其中,condition1、condition2等是若干个条件表达式,result1、result2等是它们对应的结果值,else_result是当所有条件都不成立时的默认值。
CASE WHEN可以嵌套使用,例如:
```
CASE WHEN condition1 THEN
CASE WHEN condition2 THEN result2
ELSE result3
END
ELSE result1
END
```
这个语句中,如果condition1成立,再根据condition2的结果返回result2或result3;如果condition1不成立,直接返回result1。
CASE WHEN常用于对查询结果进行分类汇总,例如按照某个字段的值进行分组:
```
SELECT
CASE WHEN age < 18 THEN '未成年'
WHEN age BETWEEN 18 AND 60 THEN '成年人'
ELSE '老年人'
END AS age_group,
COUNT(*) AS count
FROM users
GROUP BY age_group;
```
这个查询会将users表中的用户按照年龄分为三组,统计每组的用户数。其中,CASE WHEN语句根据用户年龄进行分类汇总,生成一个名为age_group的新字段,用于分组。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)