表A结构(编号,卡号,使用状态)
表B结构(编号,姓名)
其中表A中的使用状态只有2个值,一个是True一个是False
我想要的结果
(编号,姓名,卡号,使用状态)
注意,表A中的编号在表B中可能不存在,如果不存在结果姓名是'未知',使用状态如果A中是True就是已用False是未用
而且表的结构不能改变(2个表还有其它列,在这里省略了)

解决方案 »

  1.   

    select b.*,isnull(a.使用状态,'未知') from b left join a  on a.编号= b.编号
      

  2.   

    select a.编号
    ,Isnull(b.姓名,'未知') as 姓名
    ,a.卡号
    ,case when a.使用状态='True' then '已用' else '未用' end as 使用状态
    from a left join b on a.编号=b.编号
      

  3.   


    --试下
    select a.编号,isnull(a.姓名,'未知') 姓名,b.卡号,
    (case 使用状态 when 'True' then '已用' else '未用' end) 使用状态 
    from tableB a left join tableA b on (a.编号=b.编号)
      

  4.   

    select a.编号
    isnull(b.姓名,'未知') as 姓名
    ,a.卡号
    ,case a.使用状态 when 'true' then '已用' else '未用' end as 使用状态
    from a left join b
    on a.编号 = b.编号
      

  5.   

    select
     a.编号,
     isnull(b.姓名,'未知') as 姓名,
     a.卡号,
     case when a.使用状态='True' then '已用' else '未用' end as 使用状态
    from
     a left join b 
    on
     a.编号=b.编号
      

  6.   


    --我了个X,看反了,改下
    select a.编号,
    isnull(b.姓名,'未知') 姓名,
    a.卡号,
    (case a.使用状态 when 'True' then '已用' else '未用' end) 使用状态 
    from tableA a left join tableB b on (a.编号=b.编号)