mysql+case
时间: 2023-11-24 14:52:46 浏览: 32
MySQL中的CASE语句是一种条件表达式,类似于if/else语句。它可以在SELECT、UPDATE和DELETE语句中使用,用于根据条件返回不同的值。下面是一个使用CASE语句的示例:
假设我们有一个名为students的表,其中包含学生的姓名和分数。我们想要根据学生的分数将他们分为三个等级:优秀、良好和及格。可以使用以下查询:
```mysql
SELECT name, score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM students;
```
上述查询将返回一个结果集,其中包含每个学生的姓名、分数和等级。在查询中,我们使用了CASE语句来根据学生的分数返回不同的等级。如果分数大于等于90,则返回“优秀”,如果分数大于等于80,则返回“良好”,如果分数大于等于60,则返回“及格”,否则返回“不及格”。
相关问题
mysqlcase+when+用法
MySQL中的CASE WHEN语句是一种流程控制语句,它允许根据条件执行不同的操作。它的基本语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
其中,expression是要比较的表达式,value1、value2等是expression可能的取值,result1、result2等是对应的结果。如果expression等于value1,则返回result1,如果expression等于value2,则返回result2,以此类推。如果expression不等于任何value,则返回ELSE后的result。
下面是一个例子,假设我们有一个学生成绩表,需要将成绩按照一定的规则进行分类:
```
SELECT
name,
score,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS grade
FROM
student;
```
在这个例子中,我们使用了CASE WHEN语句将成绩按照90分以上、80分以上、60分以上和60分以下四个等级进行分类,并将结果保存在grade列中。
MYsql case
MySQL CASE语句是一种条件表达式,用于根据不同的条件执行同的操作。它可以在SELECT、UPDATE和DELETE语句中使用。
CASE语句有两种形式:简单CASE表达式和搜索CASE表达式。
1. 简单CASE表达式:
简单CASE表达式通过比较一个表达式与一系列可能的值,然后根据匹配的值执行相应的操作。它的语法如下:
```
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
```
示例:
```
SELECT column_name,
CASE grade
WHEN 'A' THEN '优秀'
WHEN 'B' THEN '良好'
WHEN 'C' THEN '及格'
ELSE '不及格'
END AS result
FROM table_name;
```
2. 搜索CASE表达式:
搜索CASE表达式使用一系列条件来匹配,并根据匹配的条件执行相应的操作。它的语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
示例:
```
SELECT column_name,
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS result
FROM table_name;
```