如何在sql查询中的内连接中应用条件

时间:2014-06-09 14:30:25

标签: sql sql-server sql-server-2008

我有不同的表可以说A,B,C。

从表A我正在使用的查询是

select a.status, a.resolution, a.ID 
from A a ;

从表格B中,我必须在B.destID匹配

时抓取A.ID

为此我正在使用

select b.destID 
from B b 
where b.ID = A.ID  ;

if  b.destID exists then 
    select newstatus  
    from C 
    where C.id = B.destID 
else 
    select newstatus  
    from C 
    where C.id = A.ID 

有人可以帮助我将所有这三个查询合并为一个吗?

感谢任何帮助..提前致谢

1 个答案:

答案 0 :(得分:1)

不确定

 select a.status,a.resolution, 
    Coalesce(c2.newstatus, c1.newstatus) newStatus 
 from A Left Join B On B.ID = A.ID 
   Left Join C c1 On c1.id = A.Id
   Left Join C c2 On c2.id = B.destID