问题描述:
select A.clbhid, B.clbhid,isnull(A.zrksl,0),isnull(B.zylsl,o)   
 from A full outer join B 
on A.clbhid=B.clbhid  order by A.clbhid
查询结果是:
A.clbhid  B.clbhid  zrksl  zylsl
cl001       Null      1      2
Null        cl002     2      4
cl003       cl003     1      5提出问题:请问怎样把这两个材料编号(clbhid)合并在一起呀?其中一个为空的话自动选择另外一个。

解决方案 »

  1.   

    select 
    isnull(A.clbhid,B.clbhid)A.clbhid,
    isnull(B.clbhid,A.clbhid)B.clbhid,
    isnull(A.zrksl,0),isnull(B.zylsl,o)   
     from A full outer join B 
    on A.clbhid=B.clbhid  order by A.clbhid
      

  2.   

    select 
    isnull(A.clbhid,B.clbhid)AS 'A.clbhid',
    isnull(B.clbhid,A.clbhid)AS 'B.clbhid',
    isnull(A.zrksl,0),isnull(B.zylsl,o)   
     from A full outer join B 
    on A.clbhid=B.clbhid  order by A.clbhid
      

  3.   

    select 
        case when A.clbhid is not null then A.clbhid else B.clbhid end as clbhid,
        isnull(A.zrksl,0),
        isnull(B.zylsl,o)   
    from A full outer join B on A.clbhid=B.clbhid  order by A.clbhid
      

  4.   

    select clbhid=isnull(A.clbhid, B.clbhid),isnull(A.zrksl,0),isnull(B.zylsl,o)   
     from A full outer join B 
    on A.clbhid=B.clbhid  order by A.clbhid