当前位置: 代码迷 >> DB2 >> 求一条件查询语句,请大家帮帮忙,该怎么处理
  详细解决方案

求一条件查询语句,请大家帮帮忙,该怎么处理

热度:845   发布时间:2013-02-26 00:00:00.0
求一条件查询语句,请大家帮帮忙
taba   表   id     bid     aid     name
        tabb   表   id     name
    现在   a表中的bid可能为空也可能是tabb表的一个主健id,aid是taba表的一个主健也可能为空,现在我要取出taba表的所有记录,当bid不为空的时候,我取bid对应的name,当aid不为空我取对应name,如下:
  select   a.id   ,b.name,c.name   a.name   from   taba   a,tabb   b,taba   c   where  
        a.bid=b.id   and   a.aid=c.id  
但是这样只能把bid和aid不为空的记录提取出来,bid或aid为空,或者bid、aid都为空的记录就取不出来了;请大家给写一个;谢谢

------解决方案--------------------------------------------------------
select a.id,case when a.bid <> ' ' then b.name else a.name
end from taba as a left join tabb as b on a.bid=b.id

当aid不为空我取对应name---这句没明白
我现在写的是当bid不为空(我写的是 ' ',你可以改称is not null,我不知道你具体的要求)
显示tabb的name,否则显示taba的name
  相关解决方案