sqlcase when else用法
时间: 2024-08-17 11:00:31 浏览: 63
SQL中的`CASE`表达式是一种控制流函数,类似于编程语言中的if-else语句,用于基于不同的条件执行不同的操作。它主要有两种形式:简单`CASE`表达式和搜索`CASE`表达式。
简单`CASE`表达式的基本语法如下:
```sql
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
[ ELSE resultN ]
END
```
搜索`CASE`表达式的基本语法如下:
```sql
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
[ ELSE resultN ]
END
```
在这两种形式中,`expression`或`condition`代表要评估的表达式或条件,`result`代表当对应的条件成立时要返回的结果。如果没有任何`WHEN`子句的条件满足,则会返回`ELSE`子句中的结果(如果提供了`ELSE`子句)。如果没有`ELSE`子句,并且所有`WHEN`子句的条件都不满足,则返回`NULL`。
例如,在查询中使用搜索`CASE`表达式来根据条件修改列的值:
```sql
SELECT
employee_name,
salary,
CASE
WHEN salary > 5000 THEN '高'
WHEN salary > 3000 THEN '中'
ELSE '低'
END AS salary_level
FROM
employees;
```
在这个例子中,根据员工的薪水,我们使用`CASE`表达式将薪水等级分类为“高”、“中”或“低”。
阅读全文