我在db中找到了一个sproc,我想推断一个表连接?
从下面的示例中推断出这是否准确?
SELECT a.Column1, b.Column2
FROM [dbo].[Table1] As a,
[dbo].[Table2] AS b
答案 0 :(得分:3)
您推断正确,这是笛卡尔联接。
答案 1 :(得分:3)
它确实推断了一个联接,但该联接是一个CROSS JOIN
,这很少是你想要的。它不会简单地将a
的每一行映射到b
中的等价行。相反,它会将a
的每一行映射到b
的每一行。这是一个联接,但当我们谈论联接时,它并不是我们经常想到的。
我想展示一个简单的例子,但不幸的是,SQL Fiddle已经失败了。遗憾!
有关SQL Server here中的交叉连接和笛卡尔积的更多信息。
答案 2 :(得分:2)
是的,它被称为“自然加入”。您可以使用WHERE
子句约束它。