create table a(a varchar(10)) create table b(a varchar(10),b varchar(10)) create table c(a varchar(10),b varchar(10))insert into a values ('a') insert into a values( 'b') insert into a values( 'c') insert into a values ('d') insert into b values ('a','a') insert into b values ('b','b') insert into b values ('e','c')insert into c values ('a','a') insert into c values ('b','b') insert into c values ('d','d') insert into c values ('f','e')select * from a left join b on b.a=a.a full join c on a.a=c.a and b.b=c.bselect * from a left join (select isnull(b.a,c.a) as a from b full join c on c.b=b.b ) f on f.a=a.a 从例子中自己找区别吧
create table b(a varchar(10),b varchar(10))
create table c(a varchar(10),b varchar(10))insert into a values ('a')
insert into a values( 'b')
insert into a values( 'c')
insert into a values ('d')
insert into b values ('a','a')
insert into b values ('b','b')
insert into b values ('e','c')insert into c values ('a','a')
insert into c values ('b','b')
insert into c values ('d','d')
insert into c values ('f','e')select * from a left
join b on b.a=a.a full join c on a.a=c.a and b.b=c.bselect * from a
left join (select isnull(b.a,c.a) as a from b full join c on c.b=b.b ) f on f.a=a.a
从例子中自己找区别吧