Левое внешнее соединение (LEFT OUTER JOIN) в SQL
Запрос с оператором LEFT OUTER JOIN предназначен для соединения таблиц и вывода результирующей таблицы, в которой данные полностью пересекаются по условию, указанному после ON, и дополняются записями из первой по порядку (левой) таблицы, даже если они не соответствуют условию. У записей левой таблицы, которые не соответствуют условию, значения столбца из правой таблицы будет NULL (неопределённым).
Для наглядности работы LEFT OUTER JOIN, ниже находится изображение, на котором показано, как происходит левое внешнее объединение таблиц.
Синтаксис LEFT OUTER JOIN
SELECT поля_таблиц FROM таблица_1 LEFT OUTER JOIN таблица_2 ON условие_для_объединения;
Практический пример
Произвести объединение таблиц Users и Sales при помощи LEFT OUTER JOIN, а затем вывести всю информацию о пользователях, которые совершали покупки.
Исходная таблица: Users
Исходная таблица: Sales
Формируем SQL-запрос.
SELECT * FROM Users LEFT OUTER JOIN Sales ON Users.id_users = Sales.id_users;
После выполнения SQL-запроса, у нас будет результирующая таблица, в которой будут выведены результаты объединения двух таблиц при помощи оператора LEFT OUTER JOIN. Если вы внимательно посмотрите на таблицу, то увидите, что в результирующей таблице присутствуют результаты, которые не соответствуют заданному условию ON, поэтому они заполняются значением NULL.
Результирующая таблица
Метки: LEFT OUTER JOIN, SQL, Объединение таблиц.