A 表   
          ID      liuchengID                            liuchengName
          1          A021                               收到项目确认函
          2          A022                               收到合同(PO)
         11          B041                               抽样培训
         12          B042                               抽样进度表
B 表
  liuchengID     sss
  A021          张三
    
显示成这个样子  ID              liuchengID        liuchengName         statss
   1                A021           收到项目确认函         张三
   2                A022            收到合同(PO)        没有
   11               B041             抽样培训             没有
   12               B042             抽样进度表           没有查找  
如果B表没有关于A表相同的 则显示没有    如果B表有关于A表的 则显示B表的sss

解决方案 »

  1.   


    select A.*,isnull(b.sss,'没有') as  statss
    from A left join B on A.liuchengID = b.liuchengID
      

  2.   

    select a.* , isnull(b.sss,'没有') statss from a left join b on a.liuchengID = b.liuchengID
      

  3.   


    select ta.*,ISNULL(tb.sss,'没有')
    from ta left join tb on ta.liuchengID=tb.liuchengID 
      

  4.   

    create table A(ID int, liuchengID varchar(10), liuchengName varchar(20))
    insert into a values(1 , 'A021' , '收到项目确认函')
    insert into a values(2 , 'A022' , '收到合同(PO)')
    insert into a values(11, 'B041' , '抽样培训')
    insert into a values(12, 'B042' , '抽样进度表')
    create table B(liuchengID varchar(10), sss varchar(10))
    insert into b values('A021' , '张三')
    goselect a.* , isnull(b.sss,'没有') statss from a left join b on a.liuchengID = b.liuchengIDdrop table a , b/*
    ID          liuchengID liuchengName         statss     
    ----------- ---------- -------------------- ---------- 
    1           A021       收到项目确认函              张三
    2           A022       收到合同(PO)             没有
    11          B041       抽样培训                 没有
    12          B042       抽样进度表                没有(所影响的行数为 4 行)*/
      

  5.   

    select a.*,statss=case when b.liuchengID is null then '没有' else sss end 
    from a
      left join b
        on a.liuchengID=b.liuchengID
      

  6.   

    --2000
    SELECT a.*, 
    statss = ISNULL(b.sss,'没有')
    FROM a
    LEFT JOIN b
    ON  a.liuchengID = b.[liuchengID]
    /*
    ID          liuchengID liuchengName         statss
    ----------- ---------- -------------------- ----------
    1           A021       收到项目确认函              张三
    2           A022       收到合同(PO)             没有
    11          B041       抽样培训                 没有
    12          B042       抽样进度表                没有(4 行受影响)
    */
    --2005
    SELECT a.*, 
    statss = ISNULL(c.sss,'没有')
    FROM a
    OUTER APPLY (SELECT sss FROM b where a.liuchengID = b.[liuchengID]) c
    /*
    ID          liuchengID liuchengName         statss
    ----------- ---------- -------------------- ----------
    1           A021       收到项目确认函              张三
    2           A022       收到合同(PO)             没有
    11          B041       抽样培训                 没有
    12          B042       抽样进度表                没有(4 行受影响)
    */

      

  7.   

    连接查询即可   哇  SQL的各位老大都好热心~