同一张表查询一个字段为空则取另一个字段

如有以下数据

如果CANDATE不为空则取CANDATE否则取ENDDATE;

第一种:decode取法

  select a.code, decode(a.candate, null, a.enddate, a.candate) from ee a;
效果如下:

第二种:case when取法

select a.code, case
         when a.candate is null then
          a.enddate
         else
          a.candate
       end
  from ee a;

效果如下:

猜你喜欢

转载自blog.csdn.net/jungeCSND/article/details/105285496