select A.id, A.username, A.QQ,B.phone
from T1 A inner join
(select id,username,phone1 as phone from T2
union
select id,username,phone2 as phone from T3) B on A.username=B.username

解决方案 »

  1.   

    select
        a.id,a.username,a.QQ,b.phone1 as phone
    from
        T1 a
    inner join
        (select * from T2 union all select * from T3) b
    where
        a.username=b.username
      

  2.   

    select
        a.id,a.username,a.QQ,b.phone1 as phone
    from
        T1 a
    inner join
        (select * from T2 union all select * from T3) b
    on
        a.username=b.username
      

  3.   


    declare @T1 table(id int,username varchar(20),QQ  varchar(20))insert @T1 values(1,'u1','2233')
    insert @T1 values(2,'u2','33445')
    insert @T1 values(3,'u3','42424')
    insert @T1 values(4,'u4','243454')
    insert @T1 values(5,'u5','243545')declare @T2 table(id int,username varchar(20),phone1 varchar(20))insert @T2 values(1,'u1','112230')
    insert @T2 values(2,'u2','223111')
    insert @T2 values(3,'u3','445222')declare @T3 table(id int,username varchar(20),phone2 varchar(20))insert @T3 values(1,'u4','111254')
    insert @T3 values(2,'u5','695422')
    select a.*,b.phone1 from @T1 a ,@T2 b where a.username=b.username
    union all
    select a.*,c.phone2 from @T1 a ,@T3 c where a.username=c.username