У меня есть следующий запрос «Полное внешнее соединение»:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Насколько мне известно, целью «Полного внешнего соединения» в MySQL является возврат всех строк из левой таблицы (Клиенты) и всех строк из правой таблицы (Заказы).
Если в «Заказчиках» есть строки, которым нет совпадений в «Заказах», или если в «Заказах» есть строки, которым нет совпадений в «Клиенты», эти строки также будут перечислены.
Мое сомнение/вопрос заключается в том, что если «Полное внешнее соединение» в MySQL будет возвращать строки из обеих таблиц независимо от соответствующего элемента, то необходимо ли указывать условие в предложении WHERE? Я не могу пропустить это?
Пожалуйста, дайте мне канонический и конкретный ответ относительно RDBMS MySQL.
Спасибо.
FULL JOIN
и вам не нужно указывать предложениеWHERE
, хотя априори ничто не мешает вам это сделать. - person Tim Biegeleisen   schedule 18.10.2015