【发布时间】:2013-03-29 14:15:22
【问题描述】:
主表
ID Column1 TableA.fK TableB.fk
1 some-value 1 null
2 some-value 1 1
3 some-value null 2
表A
TableA.pk Column1
1 some-value
表B
TableB.pk Column1
1 some-value
2 some-value
Select Main.ID,Main.Column1 ,A.Column1,B.Column1
FROM MainTable main
LEFT JOIN
Table A
ON Main.TableA.fk = A.TableA.pk
LEFT JOIN
TableB b
ON Main.TableB.fk =B.TableB.fk
WHERE Main.ID =1
意思
结果是
ID Column1 A.Column1 B.Column1
1 some-value some-value null
期待输出
ID column1 A.Column1
1 some-value some-value
不应显示 B.column1
当 tableA 的外键值不为空时,如果此处使用上述 SELECT 查询,则应从 TableA 获取所有详细信息
我正在使用 RDBMS Microsoft Sql Server 2008
【问题讨论】:
-
如果您只期望
ID和A.Column1,为什么要将B.Column1包含在您的SELECT中?