在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查询中根据条件返回不同的结果,从而实现更加灵活的数据查询和分析。