mysql中的 case when语句怎么写
时间: 2023-06-01 22:03:11 浏览: 102
MySQL中的CASE WHEN语句语法如下:
```
SELECT
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
FROM table_name;
```
其中,condition1、condition2等是条件表达式,result1、result2等是对应的结果表达式。ELSE子句是可选的,用于指定当所有条件都不满足时的默认结果。
例如,假设我们有一个学生成绩表students,包含id、name、score三个字段。我们想要根据学生成绩判断他们的等级,并输出等级和对应的成绩范围,则可以使用以下CASE WHEN语句:
```
SELECT
name,
score,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
WHEN score >= 60 THEN 'D'
ELSE 'F'
END AS grade
FROM students;
```
相关问题
MySQL中case when 语句
在MySQL中,`CASE WHEN`语句用于根据特定条件返回不同的结果。它主要用于条件判断和数据转换。这里有两个示例:
1. **基于列值的条件判断**[^1]:
```sql
SELECT
id,
CASE
WHEN status = 'active' THEN '用户活跃'
WHEN status = 'inactive' THEN '用户不活跃'
ELSE '未知状态'
END AS status_description
FROM users;
```
这里会根据`status`列的值(如'active'或'inactive')返回相应的描述。
2. **使用IF函数的简化版本**[^2]:
```sql
SELECT
score,
CASE
WHEN score = 'A' THEN '优'
ELSE '不及格'
END AS grade
FROM grades;
```
这里通过`CASE`语句实现了与`IF`函数类似的功能,如果`score`等于'A',则返回'优',否则返回'不及格'。
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语句在MySQL中进行条件判断:
```
SELECT
column1,
column2,
CASE
WHEN column3 > 10 THEN '大于10'
WHEN column3 > 5 THEN '大于5'
ELSE '其他'
END AS result
FROM
table_name;
```
在上述示例中,根据列`column3`的值,如果大于10,则返回'大于10';如果大于5,则返回'大于5';否则返回'其他'。这样可以根据不同的条件给出不同的结果。
阅读全文