在SELECT查询中,可以使用CASE WHEN语句来根据条件返回不同的结果。它的基本语法如下:
```
SELECT column1, column2, ...,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
FROM table_name;
```
在这个语法中,CASE WHEN语句用于根据条件返回不同的结果。如果没有任何条件匹配,则返回ELSE子句中指定的默认结果。
以下是一个例子,假设有一个名为students的表,其中包含学生的姓名和分数。现在需要查询每个学生的姓名和成绩等级(A、B、C或D),并按照成绩等级进行排序:
```
SELECT name, score,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D'
END AS grade
FROM students
ORDER BY grade DESC;
```
在这个例子中,使用了CASE WHEN语句来根据学生的分数计算出成绩等级,并将其作为新的列grade返回。如果分数大于等于90,则成绩等级为'A';如果分数大于等于80,则成绩等级为'B',以此类推。最后,使用ORDER BY子句按照成绩等级降序排列结果集。
总之,使用CASE WHEN语句可以在SELECT查询中根据条件返回不同的结果,从而实现更加灵活的数据查询和分析。