2010-07-06 2 views
79

В чем разница между результатами:Разница между JOIN и OUTER JOIN в MySQL

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

Не могли бы вы объяснить это несколькими примерами?

+3

@Pranay, [вы знаете, что происходит] (http://meta.stackexchange.com/questions/57971/my- answer-got-convert-to-community-wiki) при создании слишком большого количества правдоподобных изменений ... – Arjan

+0

Возможный дубликат [В чем разница между (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN) в Mysql] (http://stackoverflow.com/questions/5706437/whats-the-difference-between-inner-join-left-join-right-join-full-join-in-mys) – JonH

+0

@JonH нет, это дубликат этого: Этот вопрос пришел первым. – cellepo

ответ

160

Нет никакой разницы между RIGHT JOIN и RIGHT OUTER JOIN. Оба они одинаковы. То есть, LEFT JOIN и LEFT OUTER JOIN оба одинаковы.

Visual Representation of SQL Joins

+17

Это мой новый образ goto для присоединений. –

+4

Это изображение, вероятно, лучший/самый быстрый способ объяснить различия между различными типами объединений для кого-то. Хорошая находка. –

+1

Это интересно. (предупреждение n00b) Зачем вам нужны как правые, так и левые соединения? Почему бы не просто перевернуть позиции ваших основных и объединенных таблиц в свой запрос и сделать это с одним направлением соединения? – Drew

2
  • SQL Server Форумы - Различия между левыми присоединиться & левое внешнее соединение

http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=53046

  • LEFT JOIN vs. LEFT OUTER JOIN

http://itknowledgeexchange.techtarget.com/itanswers/left-join-vs-left-outer-join/

  • PL/SQL - В чем разница между правым присоединиться и правое внешнее ...

http://www.geekinterview.com/question_details/53637

25

Вот очень хороший Visual Explanation объединений в целом по нашему собственному Джеффу Этвуд , Правое внешнее соединение совпадает с правым соединением, а левое и левое внешнее соединение также одинаковы.

8

Какова разница между результатом:

RIGHT JOIN и RIGHT OUTER JOIN

Нет разницы.

LEFT JOIN AND LEFT OUTER JOIN?

Без разницы.

Проще говоря, ключевое слово OUTER не является обязательным. Вы можете включить его или опустить, не затрагивая набор результатов.

+1

Где это задокументировано? – Qtax

20

Nice объяснения SQL Регистрация:

enter image description here

Ссылка: link

+0

не имеет имен –

0
  • "Join" является объединением двух или более таблиц (сущности) со всеми данными.
  • «Внешний» является объединение двух или более таблиц, за исключением атрибутов, используемых для объединения
+1

Какая новая информация дает ваш ответ, что другие 6+-летние вопросы нет? –