2018-11-13sql的查询判断

我们在sql中的 case when 里面可以叠加相同的语句,

case when 条件 then case when  条件 end else case when 条件 then 。。。 end


CASE WHEN

-- 判断在特殊岗位是否有设定好的天数

(sp.round_num  IS not NULL || sp.day_num != '')

AND(LEFT(spe.add_time,4)<'${comboBox}' || (LEFT(spe.add_time,4)='${comboBox}' AND CEILING(SUBSTRING(spe.add_time,6,2)/2)<=1))

AND ((spe.del_time IS NULL || spe.del_time = '')||

-- 且结束时间是否包含在所选年度的轮次里面

LEFT(spe.del_time,4)>'${comboBox}' || (LEFT(spe.del_time,4)='${comboBox}' AND CEILING(SUBSTRING(spe.del_time,6,2)/2)>=1))

THEN

CASE WHEN

-- 如果岗位表存在这个轮次

  sp.round_num LIKE '%1%'

THEN

-- 那么值就是数据库里面的,否则就设置为0

sp.day_num ELSE 0 END

-- 如果不是特殊岗位 那么就设置成5天

ELSE 5 END as '应完成天数'

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,419评论 0 10
  • 听 雨又在拍打着窗 在玻璃上开出一朵朵小花 瞬间又消散 正如它们从未开过一般 看 庭前的葡萄树正悄然吸允着甘泉 你...
    马桶左便器阅读 268评论 0 0
  • 早起之必要 吃面之必要 一点点酒和木樨花之必要 正正经经看一名女子走过之必要 君非海明威此一起码认识之必要 跑步之...
    每天进步1点点阅读 220评论 0 0