日期:2014-05-17 浏览次数:20468 次
create table A(A int, AA int)
create table B(B varchar(5), A int)
create table C(C varchar(5), A int)
insert into A
select 1,11
insert into B
select 'B',1 union all
select 'b1',1 union all
select 'B2',1
insert into C
select 'C',1 union all
select 'c1',1
select isnull(t1.A,t2.A) 'A',
isnull(t1.AA,t2.AA) 'AA',
t1.B,
t2.C
from
(select x.A,x.AA,y.B,row_number() over(order by getdate()) 'rn'
from A x left join B y on x.A=y.A) t1
full join
(select x.A,x.AA,z.C,row_number() over(order by getdate()) 'rn'
from A x left join C z on x.A=z.A) t2 on t1.rn=t2.rn
/*
A AA B C
----------- ----------- ----- -----
1 11 B C
1 11 b1 c1
1 11 B2 NULL
(3 row(s) affected)
*/