在 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 奖金。