Left join sql: SQL LEFT JOIN (With Examples)

SQL LEFT JOIN Ключевое слово

w3big.com

Latest web development tutorials

Предыдущая: SQL INNER JOIN ключевых слов

Далее: SQL RIGHT JOIN Ключевое слово

SQL LEFT JOIN Ключевое слово

LEFT JOIN ключевое слово из левой таблицы (table1) возвращает все строки, даже если нет совпадения для правой таблицы (table2) в. Если совпадений не найдено в таблице справа, результат равен NULL.

SQL LEFT JOIN Синтаксис

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name ;

Или:

SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name = table2.column_name ;

Примечание: В некоторых базах данных, LEFT JOIN называется LEFT OUTER JOIN.


Демонстрационная база данных

В этом уроке мы будем использовать w3big образец базы данных.

Ниже приводится выбранные «сайты» таблица данных:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
| 3  | 本教程      | http://www.w3big.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+

Вот данные «access_log» веб-сайт записи доступа к таблице:

mysql> SELECT * FROM access_log;
+-----+---------+-------+------------+
| aid | site_id | count | date       |
+-----+---------+-------+------------+
|   1 |       1 |    45 | 2016-05-10 |
|   2 |       3 |   100 | 2016-05-13 |
|   3 |       1 |   230 | 2016-05-14 |
|   4 |       2 |    10 | 2016-05-14 |
|   5 |       5 |   205 | 2016-05-14 |
|   6 |       4 |    13 | 2016-05-15 |
|   7 |       3 |   220 | 2016-05-15 |
|   8 |       5 |   545 | 2016-05-16 |
|   9 |       3 |   201 | 2016-05-17 |
+-----+---------+-------+------------+
9 rows in set (0.
00 sec)

SQL LEFT JOIN примеры

Следующий SQL-оператор будет возвращать все сайты, и их взгляды (если таковые имеются).

Следующие примеры веб-сайтов, как мы покинули стол, access_log в правой таблице:

примеров

ВЫБОР Websites.name, access_log.count, access_log.date
с веб-сайтов
LEFT JOIN access_log
ON Websites.id = access_log.site_id
ORDER BY access_log.count DESC;

Выполнить выше SQL вывода результатов заключаются в следующем:

ПРИМЕЧАНИЕ: LEFT JOIN ключевое слово из левой таблицы (веб — сайты) возвращает все строки, даже если нет совпадения для правой таблицы (access_log) в.

Предыдущая: SQL INNER JOIN ключевых слов

Далее: SQL RIGHT JOIN Ключевое слово


w3big.com | HTML курс | Web курс | Web Tutorial

Оператор SQL: LEFT JOIN. — it-black.ru

Оператор SQL: LEFT JOIN. — it-black.ru

Оператор LEFT JOIN осуществляет формирование таблицы из записей двух или нескольких таблиц.

В операторе важен порядок следования таблиц, так как от этого будет зависеть полученный результат. Алгоритм работы оператора следующий:

1. Сначала происходит формирование таблицы внутренним соединением (оператор INNER JOIN) левой и правой таблиц;

2. Затем, в результат добавляются записи левой таблицы не вошедшие в результат формирования таблицы внутренним соединением. Для них, соответствующие записи из правой таблицы заполняются значениями NULL.


// Синтаксис оператора:
SELECT
    column_names [,... n]
FROM
    Table_1 LEFT JOIN Table_2
ON condition;

Примеры оператора LEFT JOIN. Возьмем две известные нам таблицы. Authors и Books. В таблице Books поле Book_ID являются внешним ключом и ссылаются на таблицу Authors.

Author_IDAuthorName
1Bruce Eckel
2Robert Lafore
3Andrew Tanenbaum

Book_IDBookName
3Modern Operating System
1Thinking in JavaScript
3Computer Architecture
4Programming in PHP

Пример. Пользуясь оператором LEFT JOIN вывести, какие книги написали все авторы:


SELECT *
FROM Authors LEFT JOIN Books
ON Authors.Author_ID = Books.Book_ID;

Для закрепления материала советую самостоятельно отработать данный пример и посмотреть что получиться. Если будут вопросы пишите в комментариях.