目录
四、CASE WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2.... [ELSE resultn] END
五、CASE expr WHEN 常量值1 THEN 值1 WHEN 常量值1 THEN值1 .... [ELSE 值n] END
一、流程控制函数分类
流程处理函数可以根据不同的条件,执行不同的处理流程,可以在SQL语句中实现不同的条件选择。MySQL中的流程处理函数主要包括IF()、IFNULL()和CASE()函数。
二、 IF函数
select last_name,salary,if(salary >= 6000,'高新','低薪') "工资水平" from `employees`;
三、IFNULL函数
SELECT last_name,commission_pct,IFNULL(commission_pct ,0) "提成" FROM `employees`;
四、CASE WHEN 条件1 THEN 结果1 WHEN 条件2 THEN 结果2.... [ELSE resultn] END
SELECT last_name, salary,
CASE WHEN salary >= 15000 THEN '高薪'
WHEN salary >= 10000 THEN '白领'
WHEN salary >= 8000 THEN '蓝领'
ELSE '低薪'
END "薪资等级"
FROM `employees`;
五、CASE expr WHEN 常量值1 THEN 值1 WHEN 常量值1 THEN值1 .... [ELSE 值n] END
select employee_id,last_name,department_id,salary,
case department_id
when 10 then salary * 1.1
WHEN 20 THEN salary * 1.2
WHEN 30 THEN salary * 1.3
else salary * 1.4
end "提成"
from `employees`;