查询语句,怎么表示case when
时间: 2024-10-19 16:09:20 浏览: 12
在SQL查询语句中,`CASE WHEN` 用于条件判断并返回不同的值。它的基本语法结构如下:
```sql
CASE
WHEN condition THEN result_if_true
[WHEN condition THEN result_if_true]
[ELSE default_result_if_no_match]
END
```
这里 `condition` 是你需要测试的布尔表达式,如果该表达式的值为真(TRUE),则会执行紧跟其后的 `result_if_true`,返回对应的结果。你可以添加多个 `WHEN` 子句来检查多个条件,最后一个 `ELSE` 子句用于处理所有未匹配到前面条件的情况,返回默认结果。
例如,如果你想根据年龄给学生打分等级:
```sql
SELECT
student_id,
CASE
WHEN age < 18 THEN '少年'
WHEN age BETWEEN 18 AND 25 THEN '青年'
ELSE '成年人'
END AS age_group
FROM students;
```
在这个例子中,如果学生的年龄小于18岁,就会得到 "少年" 的结果,以此类推。
相关问题
sql 语句中 case when 与 case A when 有什么区别
在 SQL 语句中,`CASE WHEN` 和 `CASE A WHEN` 都是条件表达式,但它们的使用方式和含义有所不同。
`CASE WHEN` 语句用于在 SQL 查询中根据一组条件执行不同的操作。它的语法如下:
```sql
SELECT
column1,
column2,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END AS new_column
FROM
table_name;
```
在 `CASE WHEN` 语句中,可以使用多个 `WHEN` 语句,每个 `WHEN` 语句都包括一个条件和一个结果。如果条件为真,则返回该结果。如果所有条件都不为真,则返回 `ELSE` 语句中指定的默认结果。
`CASE A WHEN` 语句用于比较一个值和一组可能的值,并返回匹配的结果。它的语法如下:
```sql
SELECT
column1,
column2,
CASE columnA
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE default_result
END AS new_column
FROM
table_name;
```
在 `CASE A WHEN` 语句中,可以使用多个 `WHEN` 语句,每个 `WHEN` 语句都包括一个值和一个结果。如果值等于任何一个 `WHEN` 语句中指定的值,则返回该结果。如果值不等于任何一个 `WHEN` 语句中指定的值,则返回 `ELSE` 语句中指定的默认结果。
所以,`CASE WHEN` 用于执行条件操作,而 `CASE A WHEN` 用于比较值。
SQL语句中 case when用法
可以用于根据条件返回不同的结果,例如:
SELECT
CASE
WHEN score >= 90 THEN '优秀'
WHEN score >= 80 THEN '良好'
WHEN score >= 60 THEN '及格'
ELSE '不及格'
END AS result
FROM
student_scores;
阅读全文