mysql case when 用法
时间: 2023-08-31 19:34:32 浏览: 117
case语句-MySQL数据库基础教程
### 回答1:
MySQL 中的 `CASE WHEN` 语句用于实现类似于条件语句(if-then-else)的功能,可以在查询中对字段的值进行判断并返回不同的结果。语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition1`, `condition2`, ... 分别表示需要判断的条件,`result1`, `result2`, ... 分别表示当条件成立时的结果,`ELSE result` 表示所有条件都不成立时的结果。
举个例子:
```
SELECT id, name,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
ELSE 'C'
END AS grade
FROM students;
```
上面的语句中,对学生的成绩进行了判断,将其分为 A、B 或 C 等级。
### 回答2:
MySQL中的CASE WHEN语句是一种非常有用的条件语句,用于根据给定的条件执行不同的操作。它通常用于SELECT语句的查询结果中或UPDATE语句的更新操作中。
CASE WHEN语句的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是可以被评估为TRUE或FALSE的条件表达式,result1、result2等是条件满足时要返回的结果。
CASE WHEN语句的执行顺序是从上到下,一旦条件满足,就会执行对应的结果,并且立即退出CASE WHEN语句。
以下是一个示例:
```
SELECT name,
score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM students;
```
这个例子中,根据学生的分数score,将其等级grade分为优秀、良好、及格和不及格四个等级,然后将结果显示在查询结果中。
CASE WHEN语句也可以嵌套使用,以实现更复杂的逻辑判断。可以使用AND、OR、NOT等逻辑操作符来组合条件表达式。
总结来说,MySQL中的CASE WHEN语句是一种非常灵活和强大的条件表达式,在查询和更新操作中可以根据不同的条件执行不同的操作,以满足实际需求。
### 回答3:
MySQL的CASE WHEN语句是一种强大的条件表达式,它可以在查询中根据不同的条件进行分支判断并返回不同的结果。
CASE WHEN语句的基本语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE else_result
END
```
该语句首先根据给定条件逐个进行判断,一旦找到满足条件的分支,就会返回对应的结果。如果所有条件都不满足,则返回ELSE子句定义的else_result。
CASE WHEN语句可以支持多层嵌套,可以在WHEN子句中使用各种比较操作符(如等于、大于、小于等)和逻辑操作符(如AND、OR)进行条件的组合。
例如,假设有一个名为students的表,其中有字段name和score,我们可以使用CASE WHEN语句来根据不同的分数范围对学生进行评级:
```
SELECT name,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 70 THEN '中等'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM students;
```
上述查询将根据学生的分数范围返回相应的评级,并将结果命名为grade。
总之,MySQL的CASE WHEN语句是一种强大的条件表达式,可以根据不同的条件进行分支判断,非常适合在查询中进行数据转换和逻辑判断。
阅读全文