mysql case when判断是否为null

本文探讨了在SQL中使用Case When语句时遇到的NULL值判断问题,通过一个具体的例子展示了当字段值为NULL时,标准的When条件无法正确判断的情况。文章强调了在SQL中判断NULL值应当使用特定的IS 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

注意: 写case when 的时候,不要携程case 字段 when xxx
      要直接写case when xxx

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值