在 SQL 中,CASE WHEN
语句用于根据一个或多个条件返回特定的值
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END
这里是一个简单的示例,展示了如何使用 CASE WHEN
语句根据员工的工作年限为其分配不同的奖金等级:
SELECT
employee_id,
name,
years_of_service,
CASE
WHEN years_of_service < 5 THEN 'Level 1'
WHEN years_of_service >= 5 AND years_of_service < 10 THEN 'Level 2'
WHEN years_of_service >= 10 AND years_of_service < 15 THEN 'Level 3'
ELSE 'Level 4'
END as bonus_level
FROM employees;
在这个示例中,我们首先选择 employee_id
、name
和 years_of_service
列。然后,我们使用 CASE WHEN
语句根据员工的工作年限 (years_of_service
) 为其分配奖金等级 (bonus_level
)。如果员工的工作年限小于 5 年,他们将获得 Level 1 奖金;如果工作年限在 5 到 9 年之间,他们将获得 Level 2 奖金,以此类推。如果员工的工作年限大于等于 15 年,他们将获得 Level 4 奖金。