sqll case,when
时间: 2023-07-07 10:44:53 浏览: 44
在 SQL 查询中,CASE WHEN 是一个非常有用的条件语句,可以用于在查询结果中根据条件返回不同的值。通常情况下,CASE WHEN 语句包含一个或多个 WHEN 子句和一个 ELSE 子句,用于定义在不同条件下应该返回的值。以下是 CASE WHEN 语句的基本语法:
```
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
```
在上述语法中,condition1、condition2 等表示不同的条件,result1、result2 等表示在满足对应条件时应该返回的值,default_result 表示当所有条件都不满足时应该返回的默认值。在实际应用中,条件和结果可以是任意有效的 SQL 表达式。
下面是一个简单的 CASE WHEN 示例,用于根据员工的工资水平返回不同的级别:
```
SELECT
employee_name,
CASE
WHEN salary >= 100000 THEN '高级'
WHEN salary >= 80000 THEN '中级'
WHEN salary >= 50000 THEN '初级'
ELSE '实习生'
END AS level
FROM
employees;
```
在上述示例中,我们使用了 CASE WHEN 语句来根据不同的工资水平返回不同的员工级别。如果员工的工资水平大于等于 100000,返回 "高级" 级别,如果工资大于等于 80000 但小于 100000,返回 "中级" 级别,以此类推。如果员工的工资水平低于 50000,返回 "实习生" 级别。