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

Какие знаешь виды JOIN-запросов

В SQL существует несколько типов JOIN-запросов:

  1. INNER JOIN — возвращает только совпадающие строки из обеих таблиц
sql
SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id
  1. LEFT JOIN — возвращает все строки из левой таблицы и совпадающие из правой
sql
SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id
  1. RIGHT JOIN — возвращает все строки из правой таблицы и совпадающие из левой
sql
SELECT * FROM table1 RIGHT JOIN table2 ON table1.id = table2.id
  1. FULL JOIN — возвращает все строки из обеих таблиц
sql
SELECT * FROM table1 FULL JOIN table2 ON table1.id = table2.id
  1. CROSS JOIN — декартово произведение строк (все возможные комбинации)
sql
SELECT * FROM table1 CROSS JOIN table2
  1. SELF JOIN — соединение таблицы с самой собой
sql
SELECT a.* FROM table1 a JOIN table1 b ON a.id = b.parent_id

В Python ORM типа SQLAlchemy эти JOIN'ы реализуются через методы .join(), .outerjoin() и другие.

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

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

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

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