关于SQL:内部联接和外部联接有什么区别

What is difference between inner join and outer join

本问题已经有最佳答案,请猛点这里访问。

内外连接的区别。我使用的是两个表,并且希望从两个表中获取数据,因此我们应该使用哪种类型的连接来解决我们的问题


这是理解连接的最佳和最简单的方法:

enter image description here

学分归本文作者。


内部联接-使用任一等效查询的内部联接提供两个表的交集,即它们共有的两行。
左外部联接-左外部联接将提供A中的所有行,以及B中的任何公用行。
完全外部联接-一个完整的外部连接将为您提供A和B的联合,即A中的所有行和B中的所有行。如果A中的某些内容在B中没有相应的数据,那么B部分为空,反之亦然。检查这个


内部联接:当两个表中至少有一个匹配项时返回所有行

左联接:返回左表中的所有行和右表中的匹配行

右联接:返回右表中的所有行和左表中的匹配行

完全联接:当其中一个表中有匹配项时返回所有行

我希望这对你有帮助


内部联接与键上的表匹配,但外部联接仅与一侧的键匹配。例如,当使用左外部联接时,查询会带来整个左侧表,并将右侧表与左侧表主键相匹配,如果没有匹配的地方,则返回空值。