Встречается на собеседованиях • сегодня

В чем разница между четыремя основными типами соединений в SQL

В SQL существует 4 основных типа соединений (JOIN):

  1. INNER JOIN - возвращает только строки, где есть совпадение в обеих таблицах.
sql
SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id
  1. LEFT JOIN - возвращает все строки из левой таблицы и совпадения из правой. Если совпадений нет - NULL.
sql
SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id
  1. RIGHT JOIN - аналогично LEFT, но приоритет у правой таблицы.
sql
SELECT * FROM table1 RIGHT JOIN table2 ON table1.id = table2.id
  1. FULL JOIN - возвращает все строки из обеих таблиц, заполняя NULL отсутствующие совпадения.
sql
SELECT * FROM table1 FULL JOIN table2 ON table1.id = table2.id

Ключевое отличие - в том, какие строки включаются в результат при отсутствии совпадений. INNER самый строгий, FULL - самый полный. LEFT/RIGHT - ассиметричные варианты.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы