sql:case函数

case 的作用

  • if 的高级版,类似Java 里面的  switch ... case 
  • 通过条件表达式匹配 case 对应的值,然后执行对应的操作

简单的 case 的语法格式

只有一个条件表达式

CASE  <表达式>
   WHEN <值1> THEN <操作>
   WHEN <值2> THEN <操作>
   ...
   ELSE <操作>
END;

语法格式说明

  • 将 <表达式> 的值 逐一和 每个 when 跟的 <值> 进行比较
  • 如果跟某个<值>想等,则执行它后面的 <操作> ,如果所有 when 的值都不匹配,则执行 else 的操作
  • 如果 when 的值都不匹配,且没写 else,则会报错

举例

SELECT name,dept_id,
CASE
        dept_id 
        WHEN 0 THEN
        "实习生" 
        WHEN 1 THEN
        "销售部" 
        WHEN 2 THEN
        "信息部" 
        WHEN 2 THEN
        "财务部" ELSE "没有部门" 
    END AS "部门" 
FROM
    emp;

重点

记得结尾要加 end !!!!

posted @ 2021-10-11 10:44  Tester-**  阅读(90)  评论(0编辑  收藏  举报