问题描述:
A表 字段1,B表 字段1, 字段2,C表 字段1,字段2,关系:B.字段1=A.字段1
C.字段1 = B.字段2但可能情况:对B表,B.字段1=A.字段1,一定有记录
对C表,C.字段1 = B.字段2,不一定有记录我现在要求一条sql语句,联合上述三张表,通过A.字段1,获取B.字段2,及C.字段2,...等字段信息
当对B表,B.字段1=A.字段1,有记录
对C表,C.字段1 = B.字段2,没有记录时,显示形如:
select B.字段2,C.字段2,C.字段3,...
XX001 ''/NULL ''/NULL当对B表,B.字段1=A.字段1,有记录
对C表,C.字段1 = B.字段2,有记录时,显示形如:
select B.字段2,C.字段2,C.字段3,...
XX001 YY001 ZZ001请问如何实现?
A表 字段1,B表 字段1, 字段2,C表 字段1,字段2,关系:B.字段1=A.字段1
C.字段1 = B.字段2但可能情况:对B表,B.字段1=A.字段1,一定有记录
对C表,C.字段1 = B.字段2,不一定有记录我现在要求一条sql语句,联合上述三张表,通过A.字段1,获取B.字段2,及C.字段2,...等字段信息
当对B表,B.字段1=A.字段1,有记录
对C表,C.字段1 = B.字段2,没有记录时,显示形如:
select B.字段2,C.字段2,C.字段3,...
XX001 ''/NULL ''/NULL当对B表,B.字段1=A.字段1,有记录
对C表,C.字段1 = B.字段2,有记录时,显示形如:
select B.字段2,C.字段2,C.字段3,...
XX001 YY001 ZZ001请问如何实现?
from a inner join b on a.字段1=B.字段1
left join c on B.字段2 = C.字段1
from a left join b on a.字段1=B.字段1
left join c on B.字段2 = C.字段1select a.* , b.* , c.* --这里自己选择你需要的字段,如果对没有的字段按照你的要求可以用isnull(C.字段2,'')
from a inner join b on a.字段1=B.字段1
left join c on B.字段2 = C.字段1