Mysql 常用函数(4)- case 函数

Mysql常用函数的汇总,可看下面文章

https://www.cnblogs.com/poloyy/p/12890763.html

case 的作用

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

简单的 case 的语法格式

只有一个条件表达式

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

语法格式说明

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

先看看emp表有什么数据

Mysql 常用函数(4)- case 函数

简单 case 的栗子:

根据部门id进行判断部门名称

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

Mysql 常用函数(4)- case 函数

可搜索 case 的语法格式

CASE
WHEN <条件1> THEN <操作>
WHEN <条件2> THEN <操作>
...
ELSE <操作>
END;

语法格式说明

  • 每个 <条件> 都是独立的,可以用 and 来连接多个查询条件
  • 不同 <条件> 是互不关联且互不影响的

可搜索 case 的栗子

每个条件都是不一样的,可以任意指定查询条件,可简单可复杂

select name,dept_id,
case
when dept_id=1 and leader != 0 and is_enable !=0 then "销售部在职员工"
when dept_id =2 and leader = 0 then "信息部大佬"
when leader = 8 then "任我行大佬"
else "啥都不是"
end
from emp;

Mysql 常用函数(4)- case 函数

重点

记得结尾要加 end !!!!

记得结尾要加 end !!!!

记得结尾要加 end !!!!

上一篇:linux系统下memcached启动正常但程序无法连接的问题解决


下一篇:amazeui学习笔记二(进阶开发4)--JavaScript规范Rules