在 SQL 中,CASE WHEN
语句可以让你根据特定条件对数据进行转换
SELECT column1, column2,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE resultN
END AS new_column_name
FROM table_name;
这里是一个具体的例子。假设我们有一个名为 employees
的表格,包含以下列:employee_id
, first_name
, last_name
, salary
和 department
。现在,我们想要查询所有员工的信息,但将每个部门的名称缩写显示。
SELECT employee_id, first_name, last_name, salary,
CASE
WHEN department = 'Human Resources' THEN 'HR'
WHEN department = 'Information Technology' THEN 'IT'
WHEN department = 'Finance' THEN 'FIN'
ELSE 'Other'
END AS abbreviated_department
FROM employees;
在这个例子中,我们使用 CASE WHEN
语句创建了一个新的列 abbreviated_department
。根据 department
列的值,我们将其转换为相应的缩写(如 ‘HR’、‘IT’ 或 ‘FIN’)。如果没有匹配到任何条件,则显示 ‘Other’。