Полный обзор всех вариантов SQL‑JOIN на примере двух таблиц

Состав строк определяется условием ON: INNER возвращает совпадения, LEFT/RIGHT сохраняют несовпавшую сторону с NULL, FULL сохраняет обе. CROSS строит декартово произведение.

Короткий ответ

Что ответить на собеседовании

Состав строк определяется условием ON: INNER возвращает совпадения, LEFT/RIGHT сохраняют несовпавшую сторону с NULL, FULL сохраняет обе. CROSS строит декартово произведение.

Подробный разбор

Ответ с пояснениями

Условие

Даны две таблицы — T1 и T2. Необходимо выполнить их соединение при помощи каждого из стандартных типов JOIN (INNER, LEFT, RIGHT, FULL, CROSS и т.д.) и указать, какие строки будут присутствовать в результате каждого объединения.

Ответ

Состав строк определяется условием ON: INNER возвращает совпадения, LEFT/RIGHT сохраняют несовпавшую сторону с NULL, FULL сохраняет обе. CROSS строит декартово произведение.

Для T1.id = T2.id каждая совпавшая пара попадает в INNER. LEFT дополнительно возвращает каждую строку T1 без совпадений с NULL в колонках T2, RIGHT — симметрично, FULL — оба дополнения. Дубликаты ключей увеличивают число пар, а обычное равенство NULL не даёт совпадения. Без содержимого T1/T2 нельзя перечислить конкретные результаты. Self join означает соединение таблицы с самой собой; EXISTS/NOT EXISTS реализуют проверки наличия или отсутствия связи.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее