my sql case when
时间: 2024-07-29 19:01:39 浏览: 86
SQL高级用法
MySQL的CASE WHEN语句是一种条件表达式,用于基于某个条件返回不同的结果。它通常与ELSE关键字一起使用,形成IF...THEN结构。基本语法如下:
```sql
SELECT
CASE
WHEN condition THEN result_if_true
ELSE result_if_false
END
FROM table_name;
```
在这里,`condition`是你想要测试的表达式,如果该条件为真(非零、非空或者不是NULL),`result_if_true`就会被选择并显示;如果条件为假,则会显示`result_if_false`。你可以设置多个WHEN部分来检查多个条件。
例如,假设你想计算某列的分数等级,可以这样写:
```sql
SELECT
id,
CASE
WHEN score > 90 THEN 'A'
WHEN score BETWEEN 80 AND 90 THEN 'B'
WHEN score BETWEEN 70 AND 80 THEN 'C'
ELSE 'D'
END AS grade
FROM students;
```
在这个例子中,根据score的不同范围,返回对应的字母等级。
阅读全文