Как можно получить данные из 3 и более таблиц в sql?

Пользователь

от keyon.brown , в категории: SQL , год назад

Как можно получить данные из 3 и более таблиц в sql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jensen , год назад

@keyon.brown 

Для получения данных из 3 и более таблиц необходимо использовать оператор JOIN. Существует несколько видов JOIN-ов, которые определяют, как соединять таблицы. Например:

  1. INNER JOIN - используется для выборки строк, имеющих совпадающие значения в обеих таблицах:


SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column INNER JOIN table3 ON table2.column2 = table3.column3;

  1. LEFT JOIN - используется для выборки всех строк из левой таблицы и только совпадающих строк из правой таблицы:


SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column LEFT JOIN table3 ON table1.column = table3.column;

  1. RIGHT JOIN - используется для выборки всех строк из правой таблицы и только совпадающих строк из левой таблицы:


SELECT * FROM table1 RIGHT JOIN table2 ON table1.column = table2.column RIGHT JOIN table3 ON table2.column2 = table3.column3;

  1. FULL OUTER JOIN - используется для выборки всех строк из обеих таблиц, даже если они не имеют совпадений:


SELECT * FROM table1 FULL OUTER JOIN table2 ON table1.column = table2.column FULL OUTER JOIN table3 ON table2.column2 = table3.column3;


Здесь table1, table2 и table3 - это названия таблиц, а column, column2 и column3 - это названия столбцов в таблицах, по которым производится соединение.