Case when then 不加else
时间: 2023-06-24 11:09:18 浏览: 61
在 SQL 中,CASE WHEN THEN 结构可以用于实现类似于 if-else 的逻辑。其中 WHEN 是一个条件表达式,THEN 是满足条件时的返回值。如果所有的条件都不满足,则可以选择省略 ELSE 子句,此时返回值为 NULL。
例如,以下 SQL 查询将根据 salary 列的值返回不同的等级:
```
SELECT name,
CASE
WHEN salary >= 100000 THEN 'A'
WHEN salary >= 50000 THEN 'B'
WHEN salary >= 30000 THEN 'C'
END AS grade
FROM employee;
```
在上面的查询中,如果 salary 大于或等于 100000,则返回等级 A;如果 salary 大于或等于 50000,则返回等级 B;如果 salary 大于或等于 30000,则返回等级 C。如果 salary 小于 30000,则返回 NULL。
如果不加 ELSE 子句,则会省略最后一个 WHEN 后面的 THEN 子句,如果没有任何一个 WHEN 条件成立,则返回值为 NULL。如果省略所有 THEN 子句,则会返回 NULL。
相关问题
Case when then 加else输出条件本身
可以使用 CASE WHEN THEN 结构来输出条件本身。可以通过在 THEN 子句中引用条件本身来实现。示例如下:
```
SELECT column_name,
CASE
WHEN condition1 THEN 'condition1'
WHEN condition2 THEN 'condition2'
ELSE 'No condition matched: ' || condition1
END AS output_condition
FROM table_name;
```
在上面的示例中,如果 condition1 匹配,则输出字符串 “condition1”,如果 condition2 匹配,则输出字符串 “condition2”,否则在 ELSE 子句中输出条件本身,并将其与自定义字符串 “No condition matched: ” 连接起来。
case when then else else后面
case when then else语句中的else后面可以跟一个默认值,当所有的when条件都不满足时,就会返回这个默认值。如果没有指定默认值,则会返回null。例如,以下语句将根据不同的销售额级别返回不同的奖金,如果销售额不在任何级别内,则返回默认值0:
```
select case
when sales > 100000 then 10000
when sales > 50000 then 5000
when sales > 10000 then 1000
else 0
end as bonus
from sales_table;
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)