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 !!!!