case when else 的用法
时间: 2023-11-07 09:03:04 浏览: 121
case when else 是一种条件语句,用于在SQL查询中根据条件给出不同的结果。它的基本语法是:
case
when 条件1 then 结果1
when 条件2 then 结果2
...
else 结果n
end
该语句首先根据条件1判断,如果条件1成立,则返回结果1;如果条件1不成立,则继续判断条件2,以此类推。如果所有条件都不成立,则返回else后面的结果n。
例如,在更新数据的时候,可以使用case when else来根据不同的条件给字段赋不同的值。在查询数据的时候,可以使用case when else来根据字段的不同值给字段重新命名。
相关问题
sqlcase when else用法
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`表达式将薪水等级分类为“高”、“中”或“低”。
orcale case when else函数用法
Oracle的CASE WHEN ELSE函数用于根据条件执行不同的操作。
基本语法如下:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
```
其中,condition1、condition2等是条件表达式,result1、result2等是与条件对应的结果。
例如,假设有一个名为"score"的表列,根据分数划分等级,可以使用CASE WHEN ELSE函数来实现:
```
SELECT score,
CASE
WHEN score >= 90 THEN 'A'
WHEN score >= 80 THEN 'B'
WHEN score >= 70 THEN 'C'
ELSE 'D'
END AS grade
FROM your_table;
```
以上示例中,根据分数score的不同范围,返回不同的等级grade。如果分数大于等于90,返回'A';如果分数大于等于80,返回'B';如果分数大于等于70,返回'C';否则返回'D'。
请注意,CASE WHEN ELSE函数也可以用于其他操作,例如更新表数据时根据条件进行不同的更新操作。这只是一个简单的示例,你可以根据具体需求来使用CASE WHEN ELSE函数。