НовоеAI-конструктор резюме: правишь прямо на листе A4, а нейросеть подсказывает, что усилитьКонструктор резюме на листе A4Попробовать
JobPath
Начать бесплатно

Data & MLSeniorТехнический

Какие виды JOIN существуют в SQL и чем отличаются left join, right join и inner join

Спрашивали 4 раза

Ответ

Что хотят услышать интервьюеры

Интервьюеры ожидают увидеть четкое понимание различных типов JOIN в SQL, их применение, а также конкретные примеры различий между left join, right join и inner join. Кандидат должен продемонстрировать способность объяснять, как эти операции работают с данными в реляционных базах данных и в каких ситуациях каждый тип JOIN лучше всего использовать.

Виды JOIN в SQL

  1. INNER JOIN:

    • Возвращает только те строки, которые имеют совпадения в обеих таблицах.
    • Пример: Если у вас есть таблица customers и таблица orders, то INNER JOIN вернет только тех клиентов, которые сделали заказы.
    SELECT customers.name, orders.amount
    FROM customers
    INNER JOIN orders ON customers.id = orders.customer_id;
  2. LEFT JOIN (или LEFT OUTER JOIN):

    • Возвращает все строки из левой таблицы и совпадения из правой таблицы. Если совпадения отсутствуют, результат будет содержать NULL для правой таблицы.
    • Пример: Запрос покажет всех клиентов, даже тех, кто не сделал заказов.
    SELECT customers.name, orders.amount
    FROM customers
    LEFT JOIN orders ON customers.id = orders.customer_id;
  3. RIGHT JOIN (или RIGHT OUTER JOIN):

    • Возвращает все строки из правой таблицы и совпадения из левой таблицы. Если совпадения отсутствуют, результат будет содержать NULL для левой таблицы.
    • Пример: Запрос покажет все заказы, включая те, которые не связаны с клиентами.
    SELECT customers.name, orders.amount
    FROM customers
    RIGHT JOIN orders ON customers.id = orders.customer_id;

Основные отличия:

  • INNER JOIN: Возвращает только совпадающие строки.
  • LEFT JOIN: Возвращает все строки из левой таблицы и совпадения из правой.
  • RIGHT JOIN: Возвращает все строки из правой таблицы и совпадения из левой.

Что могут спросить дальше

  • Объяснить использование NULL в LEFT и RIGHT JOIN
  • Привести пример с данными
  • Показать, как работают JOIN с несколькими таблицами
  • Объяснить, когда использовать каждый тип JOIN
Ответ помог?
Тренироваться бесплатно

Связаться с поддержкой

Выбери, где удобнее написать