MySQL中的case when
时间: 2023-08-28 18:18:20 浏览: 100
MySQL中的case when是一种条件表达式,用于在SELECT语句中根据不同的条件返回不同的值。简单的case函数只检查是否相等,而不进行其他比较。语法如下:
```
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在上述语法中,condition参数是一个条件表达式,可以是与case后的类型保持一致的值,也可以是布尔类型的值。如果condition为true,则返回对应的result值;如果condition为false,则继续检查后续的条件,直到找到满足条件的result值。如果没有条件满足,则返回else后面的值,如果没有else,则返回null。
此外,case when还可以用于行转列的操作。通过在SELECT语句中多次使用case when,可以将行数据转换成列数据。例如,可以使用case when将某个表中的多个课程分别作为列显示出来,并根据条件进行分组和取最大值来解决结果重复问题。
参考资料:
1、MySQL中Case When用法详解<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [MySql中case when的用法](https://blog.csdn.net/m0_60741007/article/details/128707763)[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^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [mysql中的case when](https://blog.csdn.net/weixin_43983411/article/details/110079301)[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^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文