SQL语句 case when else end 、distinct 、0

case when else end:

    case                   -------------如果

    when sex='1' then '男' -------------sex='1',则返回值'男'
    when sex='2' then '女' -------------sex='2',则返回值'女'  
    else 0                 -------------其他的返回'其他’

    end                    -------------结束


distinct   : 在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct用于返回唯一不同的值。

<>0 :  在SQL语句中相当于 !=

遇到的实际情况:

String sql = "SELECT DISTINCT a.niche_id, a.project_name, a.before_sale, a.in_sale, a.end_date_time," +" (case when (select count(*) from pre_progress where project_id=a.niche_id and status = 0) <> 0" +" then (select task_name from pre_task where pre_task_id = (select min(pre_task_id) from pre_progress where status=0 and project_id=a.niche_id))" +" else '' end) before_wait, (case when (select count(*) from in_sale where project_id=a.niche_id and status = 0) <> 0" +" then (select task_name from pre_task where pre_task_id = (select min(pre_task_id) from in_sale where status=0 and project_id=a.niche_id))" +" else '' end) in_wait FROM niche as a where a.type = 1"




本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部