mysql中case
时间: 2023-08-27 22:19:36 浏览: 73
在MySQL中,CASE语句是一种条件表达式,用于在查询中根据不同的条件执行不同的操作。它可以在SELECT语句中使用,也可以在UPDATE和DELETE语句中使用。
下面是一个简单的示例,演示了如何在SELECT语句中使用CASE语句:
```sql
SELECT column_name,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
FROM table_name;
```
在上面的示例中,column_name是要选择的列名,condition1和condition2是条件表达式,result1和result2是对应条件为真时返回的结果,result3是当所有条件都不满足时返回的结果。
以下是一个更具体的例子,假设我们有一个名为students的表,其中包含学生的姓名和分数,我们想根据分数判断学生成绩等级:
```sql
SELECT name,
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;
```
在上面的例子中,根据学生的分数判断其成绩等级,并将结果作为"grade"别名返回。
CASE语句还可以在UPDATE和DELETE语句中使用,用于根据条件更新或删除数据。例如:
```sql
UPDATE table_name
SET column_name = CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
WHERE condition;
DELETE FROM table_name
WHERE column_name = CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END;
```
希望以上示例能够帮助您理解MySQL中的CASE语句。如果您有任何进一步的问题,请随时提问。
阅读全文