Вы можете использовать операторы SQL JOIN для объединения данных из трех или более таблиц. SQL JOIN чрезвычайно гибкий, и его мощная функциональность может использоваться для объединения данных из нескольких таблиц. Давайте рассмотрим инструкции SQL, которые позволяют комбинировать результаты из трех разных таблиц, используя внутреннее соединение.
Пример внутреннего подключения
Например, возьмите таблицы, которые содержат драйверы в одной таблице и сопоставления транспортных средств во втором. Внутреннее соединение происходит там, где и автомобиль, и водитель находятся в одном городе. Внутреннее соединение выбирает все строки из обеих таблиц, которые содержат совпадение между столбцами местоположения.
В приведенной ниже инструкции SQL содержатся данные из таблиц «Драйверы и транспортные средства» в тех случаях, когда водитель и транспортное средство расположены в одном городе:
SELECT имя, имя, тег FROM драйверы, транспортные средства WHERE drivers.location = vehicles.location
Этот запрос дает следующие результаты:
lastname имя-имя тег -------- --------- --- Baker Roland H122JM Smythe Michael D824HA Smythe Michael P091YF Jacobs Abraham J291QR Jacobs Abraham L990MT
Теперь распространите этот пример, чтобы включить третью таблицу. Представьте, что вы хотели включить только водителей и транспортных средств, присутствующих в местах, открытых в выходные дни. Вы можете привести третью таблицу в свой запрос, расширив инструкцию JOIN следующим образом:
SELECT lastname, firstname, tag, open_weekends FROM драйверы, транспортные средства, местоположения WHERE drivers.location = vehicles.location AND vehicles.location = locations.location AND locations.open_weekends = 'Yes'
lastname firstname tag open_weekends -------- --------- --- ------------- Бейкер Роланд H122JM да Джейкобс Абрахам J291QR да Джейкобс Абрахам L990MT да
Это мощное расширение базового оператора SQL JOIN позволяет объединить данные сложным образом. Помимо объединения таблиц с внутренним соединением, вы также можете использовать этот метод для объединения нескольких таблиц с использованием внешнего соединения. Внешние соединения включают результаты, которые существуют в одной таблице, но не имеют соответствующего соответствия в объединенной таблице.