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

В чем разница между вложенным запросом и JOIN

Вложенный запрос (подзапрос) выполняется внутри другого запроса (обычно в WHERE или SELECT), а JOIN объединяет данные из нескольких таблиц в одном результирующем наборе.

Ключевые различия:

  1. Производительность: JOIN обычно эффективнее для больших таблиц
  2. Читаемость: JOIN делает запрос более понятным
  3. Гибкость: Подзапросы могут использоваться там, где JOIN невозможен (например, в агрегатных функциях)

Пример с подзапросом:

sql
SELECT name FROM users 
WHERE id IN (SELECT user_id FROM orders WHERE total > 1000)

Пример с JOIN:

sql
SELECT u.name FROM users u
JOIN orders o ON u.id = o.user_id
WHERE o.total > 1000

JOIN предпочтительнее для объединения таблиц, а подзапросы полезны для сложных условий или когда нужна изоляция логики.

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

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

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

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