前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mysql 常用函数(4)- case 函数

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

作者头像
小菠萝测试笔记
发布2020-06-09 16:18:38
3540
发布2020-06-09 16:18:38
举报
文章被收录于专栏:自动化、性能测试

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

https://cloud.tencent.com/developer/article/1641021

case 的作用

  • if 的高级版,类似Java 里面的

switch ... case

  • 通过条件表达式匹配 case 对应的值,然后执行对应的操作

简单的 case 的语法格式

只有一个条件表达式

代码语言:javascript
复制
CASE  <表达式>
   WHEN <值1> THEN <操作>
   WHEN <值2> THEN <操作>
   ...
   ELSE <操作>
END;
语法格式说明
  • 将 的值 逐一和 每个 when 跟的 <值> 进行比较

<表达式>

  • 如果跟某个<值>想等,则执行它后面的 ,如果所有 when 的值都不匹配,则执行 else 的操作

<操作>

  • 如果 when 的值都不匹配,且没写 else,则会报错

先看看emp表有什么数据

简单 case 的栗子:

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

代码语言:javascript
复制
SELECT name,dept_id,
CASE
        dept_id 
        WHEN 0 THEN
        "实习生" 
        WHEN 1 THEN
        "销售部" 
        WHEN 2 THEN
        "信息部" 
        WHEN 2 THEN
        "财务部" ELSE "没有部门" 
    END AS "部门" 
FROM
    emp;

可搜索 case 的语法格式

代码语言:javascript
复制
CASE
    WHEN <条件1> THEN <操作>
    WHEN <条件2> THEN <操作>
    ...
    ELSE <操作>
END;
语法格式说明
  • 每个 都是独立的,可以用 and 来连接多个查询条件

<条件>

  • 不同 是互不关联且互不影响的

<条件>

可搜索 case 的栗子

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

代码语言:javascript
复制
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;

重点

记得结尾要加 end !!!!

记得结尾要加 end !!!!

记得结尾要加 end !!!!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-05-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • case 的作用
  • 简单的 case 的语法格式
    • 语法格式说明
    • 先看看emp表有什么数据
    • 简单 case 的栗子:
    • 可搜索 case 的语法格式
      • 语法格式说明
      • 可搜索 case 的栗子
      • 重点
      相关产品与服务
      云数据库 MySQL
      腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档