Извлечение данных из нескольких таблиц с внутренними объединениями SQL

Внутренние объединения возвращают информацию, которая появляется в двух или более базах данных

Внутренние объединения являются наиболее часто используемыми объединениями в SQL. Они возвращают только информацию, которая существует в двух или более таблицах базы данных. Условие соединения определяет, какие записи соединяются вместе, и указывается в предложении WHERE. Например, если вам нужен список сопоставлений водителя/транспортного средства, в котором транспортное средство и водитель находятся в одном городе, следующий запрос SQL выполняет эту задачу:

Вот результаты:

Фамилия Имя тега
———– ———— —-
Бейкер Роланд H122JM
Смайт Майкл D824HA <бр /> Смайт Майкл P091YF
Jacobs Abraham J291QR
Jacobs Авраам L990MT

Обратите внимание, что результаты именно то, что искали. Можно дополнительно уточнить запрос, указав дополнительные критерии в предложении WHERE. Предположим, что исходный запрос сопоставляет водителей с транспортными средствами, которые им не разрешены (водители грузовиков с машинами и наоборот). Вы можете использовать следующий запрос для решения этой проблемы:

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

Фамилия Имя класса тег
———- ———— —- ——
Бейкер Роланд H122JM автомобилей <бр /> Смайт Майкл D824HA Грузовик
Jacobs Авраам J291QR автомобилей

Недостающие ряды соединяли Майкла Смайта с автомобилем, а Авраама Джейкобса с грузовиком, автомобилям, которым они не были разрешены.

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

Оцените статью
Solutics.ru
Добавить комментарий