2010-07-06 69 views
79

是在什么结果之间的差异JOIN:差异在MySQL

  1. RIGHT JOIN和RIGHT OUTER JOIN
  2. LEFT JOIN和LEFT OUTER JOIN?

你能否通过一些例子来解释一下吗?

+3

@Pranay,[你知道会发生什么(http://meta.stackexchange.com/questions/57971/my-当你进行太多简单的编辑时,你可能会遇到这样的问题... – Arjan 2011-03-25 17:31:52

+0

[Mysql中的(INNER JOIN,LEFT JOIN,RIGHT JOIN,FULL JOIN)有什么区别](http:/ /stackoverflow.com/questions/5706437/whats-the-difference-between-inner-join-left-join-right-join-full-join-in-mys) – JonH 2012-02-09 16:32:45

+0

@JonH nope,那是一个重复的:这个问题首先出现。 – cellepo 2017-03-08 00:34:54

回答

160

RIGHT JOINRIGHT OUTER JOIN之间没有区别。两者都是一样的。也就是说,LEFT JOINLEFT OUTER JOIN都是一样的。

Visual Representation of SQL Joins

+17

这是我新加入的goto图像。 – 2010-07-06 05:33:17

+4

此图像可能是解释不同类型的连接之间的差异的最好/最快的方式。很好的发现。 – 2010-07-06 06:17:52

+1

这很有趣。 (n00b警报)为什么你需要左右连接?为什么不只是在您的查询中颠倒主要&连接表的位置,并且在一个连接方向上做? – Drew 2010-07-06 07:28:26

25

这里是一个非常不错的Visual Explanation一般通过我们自己的杰夫阿特伍德加入。右外连接与右连接相同,左连接和左外连接也是相同的。

8

之间有什么实绩差异:

RIGHT JOIN和RIGHT OUTER JOIN

没有区别。

LEFT JOIN和LEFT OUTER JOIN?

没有区别。

简而言之,OUTER关键字是可选的。您可以包含它或在不影响结果集的情况下省略它。 SQL的

+1

这是记录在哪里? – Qtax 2015-11-05 16:07:39

20

尼斯解释加入:

enter image description here

参考:link

+0

没有名字 – 2018-03-06 18:08:53

0
  • “加入” 是指两个或多个表(实体)的所有数据集。
  • “外”,除了用于工会的属性两个或多个表的联合
+1

你的答案提供了哪些新的信息,其他6年以上的问题没有? – 2017-06-28 22:35:16