mysql中case when用法
时间: 2023-10-17 09:34:17 浏览: 169
sql中的case用法
在MySQL中,CASE WHEN语句用于根据条件执行不同的操作。它可以在SELECT语句中使用,用于根据特定条件对结果进行转换或分类。
下面是一个示例,演示了如何使用CASE WHEN语句将表一转换为表二的显示格式:
第一步:
```
SELECT class_id,
(CASE WHEN grade = 'primary' THEN rate ELSE 0 END) AS 'primary',
(CASE WHEN grade = 'middle' THEN rate ELSE 0 END) AS 'middle',
(CASE WHEN grade = 'high' THEN rate ELSE 0 END) AS 'high'
FROM mst_class;
```
这个查询将根据grade的值,将相应的rate值放入primary、middle或high列中。如果grade的值不符合任何一个条件,那么对应的列将显示0。
关于数据库中的性别字段,通常会使用0表示女性,1表示男性。如果你想将其转换为汉字显示,可以使用CASE WHEN语句来实现。例如,可以使用如下的查询语句来实现性别字段的转换:
```
SELECT user_id, name,
CASE WHEN gender = 0 THEN '女' WHEN gender = 1 THEN '男' ELSE '未知' END AS gender
FROM users;
```
这个查询将根据gender字段的值,返回对应的汉字表示。如果gender的值既不是0也不是1,那么将返回'未知'。
通过使用CASE WHEN语句,你可以根据特定条件对数据进行转换和分类,使查询结果更符合需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [mysql中case when的用法](https://blog.csdn.net/u010147215/article/details/124529659)[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^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文