mysql when case
时间: 2023-10-19 22:31:53 浏览: 75
MySQL中的`CASE`语句用于在查询中进行条件判断和返回不同的结果。它有两种形式:简单`CASE`表达式和搜索条件`CASE`表达式。
1. 简单`CASE`表达式:
```sql
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
在这种形式中,`expression`是要比较的值,每个`WHEN`子句后面的`value`是要匹配的值,然后返回对应的`result`。如果没有匹配到任何值,则返回`ELSE`后面的`result`。
示例:
```sql
SELECT column_name,
CASE grade
WHEN 'A' THEN '优秀'
WHEN 'B' THEN '良好'
WHEN 'C' THEN '及格'
ELSE '不及格'
END AS result
FROM students;
```
2. 搜索条件`CASE`表达式:
```sql
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
在这种形式中,每个`WHEN`子句后面的`condition`是一个布尔表达式,根据条件判断返回对应的结果。
示例:
```sql
SELECT column_name,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS result
FROM students;
```
这就是MySQL中使用`CASE`语句的基本用法。根据具体情况选择适合的形式来使用,以满足查询条件和返回需要的结果。
阅读全文