mysql case when语句的when后面添加多个条件
时间: 2023-07-06 22:44:05 浏览: 188
在MySQL中,CASE WHEN语句的WHEN后面可以添加多个条件,可以使用逻辑运算符(AND、OR、NOT)来组合多个条件。下面是一个例子,假设有一个student表,需要根据年龄和成绩范围进行分类:
```
SELECT
name,
age,
grade,
CASE
WHEN age < 18 AND grade >= 90 THEN '优秀少年'
WHEN age < 18 AND grade >= 80 THEN '优秀少年'
WHEN age >= 18 AND grade >= 90 THEN '优秀青年'
WHEN age >= 18 AND grade >= 80 THEN '优秀青年'
ELSE '普通'
END AS level
FROM
student;
```
在上面的例子中,使用了多个WHEN语句,每个WHEN语句后面都有多个条件和对应的结果。条件之间使用AND或OR运算符组合。最终结果会在SELECT语句中以别名的形式显示出来。
相关问题
mysql case when 语句
MySQL的CASE WHEN语句是一种条件表达式,用于根据不同的条件执行不同的操作。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应条件为真时的结果。ELSE子句是可选的,用于指定当所有条件都不满足时的默认结果。
下面是一个示例,展示了如何使用CASE WHEN语句:
```
SELECT
column1,
column2,
CASE
WHEN column3 > 10 THEN '大于10'
WHEN column3 > 5 THEN '大于5'
ELSE '其他'
END AS result
FROM
table_name;
```
在上述示例中,根据column3的值,将其分为三个不同的范围,并将结果存储在名为result的新列中。
mysql case when语句
MySQL的CASE WHEN语句是一种条件表达式,可以根据条件的不同返回不同的结果。它的用法有多种。首先,可以使用CASE WHEN作为SELECT语句中的一个字段,根据指定的条件返回不同的值。例如,可以根据parent_id的值返回不同的字符串,如'<3'、'>=3 && <5'和'>=5'。
另外,CASE WHEN还可以在WHERE子句和GROUP BY子句中使用。在WHERE子句中,可以根据条件过滤数据。在GROUP BY子句中,可以根据条件将结果集分组。例如,可以使用CASE WHEN进行字符串替换处理,并根据parent_id_new进行分组和排序。
此外,CASE WHEN语句还可以采用另一种语法形式,即CASE case_value WHEN when_value THEN statement_list [WHEN when_value THEN statement_list] ... [ELSE statement_list] END。这种形式将case_value与when_value逐个比较,如果匹配则执行对应的statement_list,如果没有匹配的条件,则执行ELSE语句块中的statement_list。
综上所述,MySQL的CASE WHEN语句可以根据不同的条件返回不同的结果,并且可以在SELECT语句中作为字段,也可以在WHERE和GROUP BY子句中使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [MySQL 的CASE WHEN 语句使用说明](https://blog.csdn.net/lkx021699/article/details/120543003)[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_2"}}] [.reference_item style="max-width: 50%"]
- *3* [Mysql查询时case when语句的使用](https://blog.csdn.net/shihengzhen101/article/details/79232406)[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_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文