请教大家一下sql的多分支怎么写啊?
select Cxzb_nr,Cxzb_dw,Cxzb_dwxb from Cxzb where 
case 
when @jibie='3' then Cxzb_dw=@danwei
when @jibie='2' then Cxzb_dw=@xuesh
else Cxzb_dw=@www
end

解决方案 »

  1.   

    select Cxzb_nr,Cxzb_dw,Cxzb_dwxb from Cxzb where Cxzb_dw=
    case 
    when @jibie='3' then @danwei
    when @jibie='2' then @xuesh
    else @www
    end
      

  2.   

    在请问一下,如果是两个条件怎么写,分开就可以了吗?
    select Cxzb_nr,Cxzb_dw,Cxzb_dwxb from Cxzb where Cxzb_dw=
    case 
    when @jibie='3' then @danwei
    when @jibie='2' then @xuesh
    else @www
    end
    比如条件是Cxzb_dw=*** and Cxzb_zw=***
    谢谢了
      

  3.   

    --tryselect Cxzb_nr,Cxzb_dw,Cxzb_dwxb from Cxzb where Cxzb_dw=
    (case 
    when @jibie='3' then @danwei
    when @jibie='2' then @xuesh
    else @www
    end)
    and Cxzb_zw=
    (case 
    when @jibie='3' then @danwei
    when @jibie='2' then @xuesh
    else @www
    end)
      

  4.   

    可以根据条件设定查询几个吗?
    比如当@jibie='3' 有两个条件
    当@jibie='2' 有一个条件
    麻烦大家了
      

  5.   

    select   Cxzb_nr,Cxzb_dw,Cxzb_dwxb   from   Cxzb 
    where  ((@jibie ='3' and  Cxzb_dw=@danwei)or ( @jibie= '2 ' and  Cxzb_dw=@xuesh) or (Cxzb_dw=@www))