mysql-DQL- 空处理函数ifnull - case..when..then..when..then..else..end

一、ifnull:ifnull之间没有空格

  • ifnull 是空处理函数,专门处理空的,在所有的数据库中,只要有null参与的数学运算,最终结果就是NULL。
  • 可以使用ifnull 函数,如果“数据”是null,函数会把null当作一个数值处理(数值需要指定)。
  • 案例:计算每个员工的年薪:年薪=(月薪+comm月补助)*12
  • 错误示范:select ename,(sal + comm) *12 as yearsal from emp;
  • 正确示范: select ename,(sal + ifnull(comm,0)) * 12 as yearsal from emp;如图2

二、函数:

  • case..
  • when..then..
  • when..then..
  • else..end
  • 案例:当员工的做工岗位是:MANAGER时,工资上调10%,当员工岗位是:SALESMAN,上调50%,其他情况不变;
    select
          ename,job,(case job when 'MANAGER' then sal*1.1 when 'SALESMAN' then sal*1.5 else sal end) as newsal
    from
         emp;
posted @ 2022-04-13 20:09  280887072  阅读(270)  评论(0编辑  收藏  举报