Mysql case when
时间: 2023-07-07 20:44:27 浏览: 107
MySQL CASE WHEN语句可以用于在SQL查询中执行条件逻辑。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,`condition1`、`condition2`等是条件表达式,`result1`、`result2`等是对应条件表达式成立时的结果。如果所有条件都不成立,则返回`ELSE`后面的`result`。
例如,下面的查询将根据`price`列的值返回`cheap`、`moderate`或`expensive`:
```
SELECT name, price,
CASE
WHEN price < 50 THEN 'cheap'
WHEN price < 100 THEN 'moderate'
ELSE 'expensive'
END AS price_range
FROM products;
```
这个查询将返回一个包含`name`、`price`和`price_range`列的结果集,其中`price_range`列是根据`price`列的值计算出来的。
相关问题
mysql CASE WHEN
MySQL中的`CASE WHEN`语句是一种条件语句,用于在SQL查询中根据条件对结果进行分组或排序。它的语法如下:
```
CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
```
其中,`condition1`、`condition2`等是条件表达式,`result1`、`result2`等是对应的结果表达式。如果`condition1`成立,则返回`result1`,如果`condition2`成立,则返回`result2`,否则返回`result3`。`ELSE`关键字是可选的,如果没有提供`ELSE`子句,则默认返回`NULL`。
例如,假设我们有一个`students`表,其中包含学生的姓名和分数两个字段,我们可以使用`CASE WHEN`语句来将学生按照分数分为三组:
```
SELECT name, score,
CASE WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
ELSE 'C'
END AS grade
FROM students;
```
这条查询语句将返回一个结果集,其中包含每个学生的姓名、分数和对应的等级(A、B或C)。如果一个学生的分数大于等于90分,则被分为A级;如果分数大于等于80分但小于90分,则被分为B级;否则被分为C级。
mysql case when
MySQL中的CASE WHEN语句是一种条件表达式,用于根据满足特定条件时执行不同的操作。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是条件,result1、result2等是在满足条件时返回的结果。通过添加多个WHEN子句,可以实现多个条件的判断。
下面是一个示例,根据不同的成绩范围返回不同的评级:
```
SELECT
score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 70 THEN '中等'
ELSE '不及格'
END AS grade
FROM
students;
```
这个例子中,根据score字段的值,返回对应的评级。根据具体需求,你可以根据不同的条件和结果自由组合CASE WHEN语句。
阅读全文