Назад к вопросам
Junior — Middle
84
Можете ли вы перечислить различные типы соединений таблиц в SQL и описать их особенности?
Ответ от нейросети
sobes.tech AI
В SQL существуют несколько основных типов соединений (JOIN), которые позволяют объединять данные из двух и более таблиц:
- INNER JOIN — возвращает только те строки, где есть совпадения в обеих таблицах.
- LEFT JOIN (LEFT OUTER JOIN) — возвращает все строки из левой таблицы и совпадающие строки из правой; если совпадений нет, то в местах правой таблицы будут NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — наоборот, все строки из правой таблицы и совпадающие из левой.
- FULL JOIN (FULL OUTER JOIN) — возвращает все строки из обеих таблиц, заполняя NULL там, где нет совпадений.
- CROSS JOIN — декартово произведение, каждая строка из первой таблицы соединяется с каждой строкой из второй.
Пример INNER JOIN:
SELECT users.name, orders.id
FROM users
INNER JOIN orders ON users.id = orders.user_id;
Этот запрос вернет пользователей, у которых есть заказы.