我需要在SQL Server中连接两个表:Table A
有一个称为IDTableA
的主键(integer
字段,Table B
有一个主键IDTableB
(也有integer
字段)。] >
[Table A
包含一个外键IDTableB
,据此我想连接两个表,此字段的类型为integer
,其值为0。
我的问题是,由于Table B
中没有ID为0的记录,因此不要向我显示表A中那些存储在外键中的记录,其值为0。
两个表之间的关系是:Table A
中的一条记录可能属于表B中的一条记录,也可能不属于该表。因此,表A中的外键的默认值为0。
我尝试用INNER JOIN
和LEFT OUTER JOIN
连接表,但是它不起作用,并且没有显示任何记录。我能做什么?。
谢谢。
我的SQL语句:
Select TableA.* From TableA inner join TableB on TableA.IdTableB = TableB.IdTableB
解决方案:
Select TableA.*
From TableA
LEFT JOIN TableB on TableA.IdTableB = TableB.IdTableB
我需要在SQL Server中连接两个表:表A具有一个称为IDTableA(整数字段)的主键,而表B具有一个主键IDTableB(以及整数字段)。表A包含一个外键...
仅尝试使用左联接
内部联接是应用程序中最常用的联接操作,可以视为默认联接类型。内部联接通过基于联接谓词组合两个表(A和B)的列值来创建新的结果表。该查询将A的每一行与B的每一行进行比较,以找到满足连接谓词的所有行对。当满足连接谓词时,A和B的每个匹配行对的列值将合并为结果行。