SQL: Join
Теория: INNER JOIN (внутреннее соединение)
В этом уроке мы рассмотрим INNER JOIN или внутреннее соединение. Это соединение возвращает сочетания строк из двух таблиц, которые удовлетворяют условию соединения.
Применяем INNER JOIN
Допустим, у нас есть таблица с авторами и таблица с книгами. Мы хотим отобразить на сайте список книг вместе с именами их авторов.
Таблица с книгами:
books
Таблица с авторами:
authors
books.book_author_id ссылается на authors.author_id — это связь, которая позволяет узнать имя автора книги.
Воспользуемся INNER JOIN, чтобы получить список авторов с их книгами:
Имя первой таблицы указывается после FROM. Следом идет инструкция INNER JOIN и имя второй таблицы. Далее идет слово ON и условие связывания таблиц.
Результат выполнения запроса:
С помощью INNER JOIN мы смогли построить список, в котором рядом с книгой указано имя ее автора. Результат содержит только такие пары, в которых есть и автор, и книга.
С помощью схемы опишем работу INNER JOIN в общем виде:
Схема работы INNER JOIN. Результат содержит только те пары, для которых выполнилось условие соединения — совпал цвет строк.
Для каждой строки из первой таблицы INNER JOIN пытается найти строки из второй таблицы так, чтобы выполнилось условие соединения. Если во второй таблице будет несколько подходящих строк — в результат попадут все такие пары. Если в первой или во второй таблице есть строки, для которых не нашлась подходящая пара — они не попадут в результат.
Выводы
В этом уроке мы изучили как пользоваться INNER JOIN — инструментом для связывания строк из разных таблиц. Это соединение отбирает только такие пары строк, которые удовлетворяют специальному условию соединения.
.png)














