case函数的使用一: switch case 的效果
/*

case 变量或字段或表达式
when 常量1 then 要显示的值1或语句1;
when 常量2 then 要显示的值2或语句2;

else 要显示的值n或语句n;
end

*/

/案例:查询员工的工资,要求
部门号=30,显示的工资为1.1倍
部门号=40,显示的工资为1.2倍
部门号=50,显示的工资为1.3倍
其他部门,显示的工资为原工资
/
SELECT
department_id,last_name,salary AS 原工资,
CASE department_id
WHEN 30 THEN salary1.1
WHEN 40 THEN salary
1.2
WHEN 50 THEN salary*1.3
ELSE salary
END AS 新工资
FROM
employees

case 函数的使用二: 类似于 多重if
/*

case
when 条件1 then 要显示的值1或语句1
when 条件2 then 要显示的值1或语句2

else 要显示的值n或语句n
end

*/

案例:查询员工的工资的情况
/
如果工资>20000,显示A级别
如果工资>15000,显示B级别
如果工资>10000,显示C级别
否则,显示D级别
/
SELECT
last_name,salary,
CASE
WHEN salary > 20000 THEN ‘A’
WHEN salary > 15000 THEN ‘B’
WHEN salary > 10000 THEN ‘C’
ELSE ‘D’
END AS 工资级别
FROM
employees;