От автора code.mu: РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
114 of 150 menu

Команда JOIN

Команда JOIN используется для объединения строк из двух или более таблиц на основе логической связи между ними. Связь выполняется через условие, указанное после ключевого слова ON. Обычно связываются первичный ключ одной таблицы и внешний ключ другой таблицы.

При выполнении JOIN база данных сравнивает значения указанных столбцов в обеих таблицах и объединяет только те строки, где значения совпадают. Если соответствие найдено — строки объединяются в одну. Если соответствия нет — такая строка не попадёт в результат.

По умолчанию команда JOIN работает как INNER JOIN и возвращает только совпадающие записи.

Синтаксис

SELECT table1.column_list, table2.column_list FROM table1 JOIN table2 ON table1.column_name = table2.column_name

Таблицы для примеров

countries
id name
1 Russia
2 Belarus
3 Kazakhstan
cities
id name country_id
1 Moscow 1
2 Minsk 2
3 Astana 3
4 Unknown City 0

Пример

Давайте свяжем таблицы cities и countries по полям country_id и id, чтобы получить название города и соответствующей страны:

SELECT cities.name, countries.name FROM cities JOIN countries ON cities.country_id = countries.id

Результат выполнения кода:

name name
Moscow Russia
Minsk Belarus
Astana Kazakhstan

Пример

Давайте выберем идентификатор города, название города и название страны, чтобы увидеть объединённые данные обеих таблиц:

SELECT cities.id, cities.name, countries.name FROM cities JOIN countries ON countries.id = cities.country_id

Результат выполнения кода:

id name name
1 Moscow Russia
2 Minsk Belarus
3 Astana Kazakhstan

Пример

Давайте выберем только города, которые принадлежат стране Belarus, используя условие после соединения таблиц:

SELECT cities.name, countries.name FROM cities JOIN countries ON cities.country_id = countries.id WHERE countries.name = 'Belarus'

Результат выполнения кода:

name name
Minsk Belarus

Смотрите также

  • INNER JOIN,
    которая соединяет только совпадающие строки
  • LEFT JOIN,
    которая сохраняет все строки левой таблицы
  • RIGHT JOIN,
    которая сохраняет все строки правой таблицы
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить