sql中的 CASE
时间: 2024-02-04 10:32:05 浏览: 30
在SQL中,CASE语句用于根据条件进行多条件判断和返回不同的结果。与IF语句不同,CASE语句可以在SQL语句和SQL存储过程、触发器中使用。CASE语句的语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应条件为真时返回的结果。ELSE子句是可选的,用于指定当所有条件都不满足时的默认结果。CASE语句可以嵌套使用,以实现更复杂的条件判断。
举个例子,假设有一个表dj_zt,其中有一个字段zt表示状态,我们想要统计状态为'07'和'11'的记录数量,可以使用CASE语句来实现:
```
SELECT COUNT(CASE WHEN zt = '07' THEN 1 END) + COUNT(CASE WHEN zt = '11' THEN 1 END) AS num
FROM dj_zt
WHERE qylx_dm = '03';
```
这个查询会返回满足条件的记录数量的总和作为结果。\[2\]
#### 引用[.reference_title]
- *1* *2* *3* [mysql case if 条件查询及性能分析](https://blog.csdn.net/chuntuo3398/article/details/100763039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]