select case when
时间: 2023-09-16 14:05:05 浏览: 831
MySQL 的CASE WHEN 语句使用说明
5星 · 资源好评率100%
### 回答1:
`SELECT CASE WHEN` 是 SQL 中一种条件语句,用于在满足特定条件时返回不同的结果。它的语法形式如下:
```
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
当满足 `condition1` 时返回 `result1`,满足 `condition2` 时返回 `result2`,如果都不满足,则返回 `result`。
举个例子,如果你有一个表,存有学生成绩信息,其中包含学生姓名、学科、成绩三个字段,可以使用如下语句来查询学生的成绩等级:
```
SELECT student_name, score,
(CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D'
END) AS grade
FROM student_scores;
```
这条语句会查询出每个学生的姓名,分数和成绩等级, 以成绩分数为基准, 当成绩大于等于90, 就返回 A; 大于等于80,返回 B, 以此类推,如果都不符合条件返回 D
### 回答2:
select case when 是一种条件语句,主要用于根据不同的条件执行不同的操作。它的语法形式为:
select case
when 条件1 then 操作1
when 条件2 then 操作2
else 操作3
end
当满足条件1时,执行操作1;当满足条件2时,执行操作2;如果以上条件都不满足,则执行操作3。
这个语句可以用于在查询中根据条件对结果进行分类和处理,提供更加灵活的查询结果。
例如,假设有一个学生成绩表,其中包含学生姓名、科目和成绩。我们可以使用select case when来根据不同的成绩段给学生评级:
select 学生姓名, 科目, 成绩,
case
when 成绩 >= 90 then '优秀'
when 成绩 >= 80 then '良好'
when 成绩 >= 70 then '中等'
when 成绩 >= 60 then '及格'
else '不及格'
end as 评级
from 学生成绩表
执行以上查询,会根据每个学生的成绩给出对应的评级,并将结果作为一个新的列展示出来。
总之,select case when是一种强大的条件语句,可以根据不同的条件执行不同的操作,提供更加灵活多样的查询结果。
### 回答3:
select case when是一种常用的SQL语句,用于在查询结果中根据条件选择不同的输出值。它的基本使用形式是根据给定的条件判断,然后输出相应的结果。
例如,我们有一个学生表,其中包含学生的姓名和年龄两个字段。我们可以使用select case when来根据学生的年龄段选择输出不同的标签。
假设我们要根据学生的年龄段输出"幼儿园"、"小学"、"初中"、"高中"和"大学"这五个不同的标签。可以使用如下的SQL语句:
SELECT
name,
age,
CASE
WHEN age < 6 THEN '幼儿园'
WHEN age < 12 THEN '小学'
WHEN age < 15 THEN '初中'
WHEN age < 18 THEN '高中'
ELSE '大学'
END AS education
FROM
students;
这个查询语句会根据学生的年龄判断,如果年龄小于6岁,则输出"幼儿园",如果年龄小于12岁,则输出"小学",以此类推。如果没有满足任何条件,则输出"大学"。最后的结果会包含学生的姓名、年龄和对应的教育阶段。
通过使用select case when,我们可以根据不同的条件选择输出不同的结果,这对于提取并使用特定的数据非常有用。
阅读全文