select case when语句
时间: 2023-11-19 07:54:30 浏览: 58
select case when语句是一种在SQL中使用的条件语句,它可以根据不同的条件执行不同的操作。它的语法结构如下:
```
SELECT
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
FROM table_name;
```
其中,expression是需要进行判断的表达式,value1、value2等是expression可能取到的值,result1、result2等是对应的操作结果。ELSE子句是可选的,用于指定当expression不等于任何一个value时的默认操作结果。
相关问题
SQL SELECT CASE WHEN
SQL SELECT CASE WHEN语句是一种条件语句,它可以在SELECT语句中根据条件返回不同的结果。它的语法结构如下:
```
SELECT column1, column2, CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END AS alias
FROM table_name;
```
其中,column1和column2是要查询的列名,condition1和condition2是条件表达式,result1和result2是满足条件时返回的结果,ELSE后面的result是当所有条件都不满足时返回的结果,alias是返回结果的别名。
举个例子,假设有一个学生成绩表,包含学生姓名、科目和成绩三个字段,现在要查询每个学生的总成绩,并将总成绩按照一定的标准进行分类。可以使用以下SQL语句:
```
SELECT name, SUM(score) AS total_score, CASE
WHEN SUM(score) >= 90 THEN '优秀'
WHEN SUM(score) >= 80 THEN '良好'
WHEN SUM(score) >= 60 THEN '及格'
ELSE '不及格'
END AS score_level
FROM score_table
GROUP BY name;
```
这个语句会返回每个学生的总成绩和成绩等级,其中成绩等级根据总成绩的大小进行分类。
mysql select case when用法
MySQL中的SELECT CASE WHEN语句可以根据条件返回不同的值。它的语法如下:
```
SELECT
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE default_result
END
FROM table_name;
```
其中,expression是要比较的表达式,value1、value2等是expression可能的取值,result1、result2等是对应的返回结果,default_result是当expression不等于任何value时的默认返回结果。
此外,根据引用所述,一旦满足了某一个WHEN,这一条数据就会退出CASE WHEN,而不再考虑其他CASE。
举个例子,假设有一个学生成绩表,我们想根据成绩返回不同的等级,可以使用以下语句:
```
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 student_scores;
```
以上语句会返回每个学生的姓名、成绩和对应的等级。