mysql中case when then用法
时间: 2023-04-26 15:03:35 浏览: 87
MySQL 中的 case when then 用法为:
CASE
WHEN 条件1 THEN 结果1
WHEN 条件2 THEN 结果2
...
ELSE 默认结果
END
例如,查询订单表中订单状态为已完成或已取消的订单数量:
SELECT COUNT(*)
FROM orders
WHERE status = CASE
WHEN status = 'completed' THEN 'completed'
WHEN status = 'cancelled' THEN 'cancelled'
END;
在这个例子中,CASE 语句比较 status 列的值,如果值为 'completed' 或 'cancelled',则返回相应的值。
相关问题
mysql中case when then end
在MySQL中,CASE WHEN语句用于根据条件执行不同的操作。它可以在SELECT语句中使用,也可以在UPDATE或INSERT语句中使用。
以下是两种使用CASE WHEN语句的例子:
1. 简单的函数形式:
```sql
SELECT CASE score
WHEN 'a' THEN '优秀'
ELSE '良好'
END
FROM student;
```
这个例子中,根据学生的分数,如果分数是'a',则返回'优秀',否则返回'良好'。
2. 表达式形式:
```sql
SELECT CASE
WHEN score BETWEEN 90 AND 100 THEN '优秀'
ELSE '良好'
END
FROM student;
```
这个例子中,根据学生的分数范围,如果分数在90到100之间,则返回'优秀',否则返回'良好'。
mysql中的case when then else end用法
MySQL中的CASE语句用于在查询中进行条件判断和结果返回。它的基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
```
其中,`condition1`, `condition2`等是条件表达式,`result1`, `result2`等是满足条件时返回的结果。如果没有任何条件满足,将返回`resultN`。
下面是一个示例,展示了CASE语句的用法:
```sql
SELECT
id,
name,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 70 THEN '中等'
ELSE '不及格'
END AS grade
FROM
students;
```
在这个示例中,根据学生的分数,将其对应的成绩等级作为结果返回。如果分数大于等于90,则返回'优秀';如果分数大于等于80,则返回'良好';如果分数大于等于70,则返回'中等';否则返回'不及格'。
你可以根据实际需求编写不同的条件和结果来使用CASE语句。