mysql 的 case when then 用法 和null 的判断

简单讲解:

SELECTcase                   -------------如果when sex='1' then '男' -------------sex='1',则返回值'男'when sex='2' then '女' -------------sex='2',则返回值'女'else '其他'                 -------------其他的返回'其他’end                    -------------结束
from   user            --------整体理解: user表中如果sex='1',则返回值'男'如果sex='2',则返回值'女' 否则返回'其他’

null判断:

表:一个表 aa 有两个字段 id 和 sex ,第1条记录的sex 为空串 (’’) 第二条记录的sex 为空 (null)

  1. 用法:

第一种: select (case 字段名 when 字段值1 then 结果 when 字段值2 then 结果2 else (默认值) end ) 

select id ,(case sex  when ''  then 'bbbbb'when  null then 'aaaaa' else sex end  ) as sex FROM aa;

这个结果是有问题的,理想的结果第二条记录为2 aaaaa ,但是确为空,说明这个判断null 条件有问题,

经过测试:判断null 要用is null

第二种: select (case when 判断条件1 then 结果 when 判断条件2 then 结果2 else (默认值) end )

select id ,(case   when sex= ''  then 'bbbbb'when sex is null then 'aaaaa' else sex end  ) as sex FROM aa;

实际项目用到sql:

SELECTj.id id,j.work_name '职位名称',j.com_id '公司id',j.com_name '公司名称',c.logo '公司logo',
CASEWHEN c.logo ='//s11.jiuyeb.cn/static/images/dcom.png' THEN '无' WHEN c.logo ='https://wmxy-talents.oss-cn-hangzhou.aliyuncs.com/companyLogo/bddc66c1-d7dd-4e9e-9a4a-ae64f94b4a21.pn' THEN    '无' WHEN c.logo is NULL   THEN '无'WHEN c.logo ='' THEN   '无'ELSE '有' END AS '有无logo',c.scale'规模',c.business_name '行业',c.typeid'企业性质',j.salary_floor '最低薪资',j.salay_ceil '最高薪资',j.person_count '招聘人数',j.contacts '联系人',j.tel '电话',j.phone '手机',j.remarks '标签',j.education_id_name '学历要求',
CASEj.type WHEN 0 THEN'就业宝' WHEN 1 THEN'人才服务' WHEN 2 THEN'hr端' WHEN 3 THEN'斗米' WHEN 4 THEN'实习僧' WHEN 5 THEN'海投网' ELSE NULL END AS '来源',
IF( j.jobtype = 1, '全职', '实习' ) '职位类型',j.create_time '创建时间'
FROMj_jobinfo j,j_company c
WHEREj.com_id = c.id AND j.`status` = 1 AND j.`enable` = 1AND j.create_time BETWEEN '2021-01-01 00:00:00' AND '2021-02-24 23:59:59'

mysql 的 case when then end用法 ,null 的判断,复杂SQL实际应用相关推荐

  1. MySQL的CASE和CONCAT的用法

    当时被公司要求在数据库中做判断,拼接和转换,也是小小的苦恼了一阵 废话不多说,看图 这是我新建的一张简易demo表 简单的插入了2条数据 先说说时间转换吧,如下图 这样不是很好看,写成这样会好看一些, ...

  2. mysql中case when then的用法

    case具有两种格式.简单case函数和case搜索函数. --简单case函数 case sexwhen '1' then '男'when '2' then '女'else '其他' end --c ...

  3. MySql中 case then when end用法

    1. case 字段名 when 字段名的具体值 select *, casesex when '男' ehen '雄性' else '雌性' end as '性别' from student 2. ...

  4. Mysql --concat(),concat_ws(),group_concat()用法详解(原生sql语句)

    sqlalchemy用法,参考:https://blog.csdn.net/gymaisyl/article/details/96578119 concat(), concat_ws()用法 现有一个 ...

  5. js语句连接mysql数据库_js中require()的用法----JS如何连接数据库执行sql语句或者建立数据库连接池...

    var vue = require('vue'); 引入vue的意思,commonjs的写法.node都是用require来载入模块的,可以看看webpack+vue. require()可以调用模块 ...

  6. mysql关于case when的用法举例

    原文链接:http://www.cnblogs.com/clphp/p/6256207.html Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数  CASE sex  ...

  7. mysql 查询后根据值的不同进行判断与修改,SQL中的条件判断语句(case when zhen)用法

    需求: mysql 查询后根据值的不同进行判断与修改 语法结构: SQL中的条件判断语句(case when zhen)用法 SELECT A.品号,属性,        CASE           ...

  8. mysql 函数 case_MySQL case函数的详细用法

    case 函数 MySQL 的 case 函数的语法有种: 1.简单函数 CASE [column_name] WHEN [value1] THEN [result1]... ELSE [defaul ...

  9. MySQL中Case When用法详解

    最近,在学习Hive基础知识时,遇到了遇到了Case When Else End语法,以前学习MySQL时忽略了这部分知识点,现总结一下相关的知识给大家.首先练习一个例子如下: 一.学生课程成绩统计 ...

最新文章

  1. Laravel中一些要记住 的写法
  2. iOS经典面试题之使用runtime associate方法关联的对象释放及dealloc底层原理
  3. 关于定时执行任务的解决方法,PendingIntent alarm braocastRecevier等等
  4. lua-resty-iputils, 在Openresty中,用于处理IP地址的实用程序函数
  5. Android对话框dialog大全
  6. UnityEngine.UI.dll 路径
  7. javascript编程题_如何开始使用JavaScript进行竞争性编程
  8. webbrowser 检测ajax,控制台获取网页AJAX的返回数据,用的WebBroWser
  9. 枚举函数enumerate
  10. memcached—Memcache安全性
  11. stm32有源蜂鸣器程序,高效简洁优雅。
  12. Spring Boot 项目集成Windows域账户认证
  13. 顾客银行办理业务时,首先在取号机上取号,然后坐在椅子上等候业务员叫号时前往窗口办理业务,假设银行现在有3个窗口可办理业务,请采用信号量和PV操作描述顾取号等候叫号和银行业务员叫号办理业务的同步操作。
  14. 最强蜗牛服务器维护祷告bug,最强蜗牛 这个游戏的玩家太难带了,竟然天天希望服务器有事...
  15. Golang 结构体
  16. 区块链在中国怎么练?
  17. 【微信小程序】微信小程序开发者工具的安装与基本配置
  18. Conv2Former ~2
  19. 关于vim gf问题
  20. 砼匠无人值守称重系统说明

热门文章

  1. 使用calibre将epub文件转pdf
  2. 程序员应知必会的思维模型之 21 墨菲定律 (Murphy‘s Law / Sod‘s Law)
  3. 北航计算机学院2018拟招收人数,北航2018年硕士研究生招生计划
  4. flutter图片预览_flutter 图片查看,仿微信
  5. 第四章 云计算的商业案例
  6. DPDK igb_uio驱动分析
  7. 王齐 。《后科技时代的思考》
  8. java怎么控制log文件大小,限制 Apache日志文件大小的方法
  9. ION-DTN报错Wrong profile for this SDR
  10. 阿里云服务器报警-进程异常行为-访问恶意下载源