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

Почему WHERE выполняется раньше JOIN

Порядок выполнения SQL-запросов определяется оптимизатором, но логически WHERE фильтрует строки до JOIN, уменьшая количество данных для соединения. Это повышает производительность, особенно при больших таблицах.

Пример:

sql
SELECT * FROM orders o
JOIN customers c ON o.customer_id = c.id
WHERE o.status = 'shipped'

Оптимизатор сначала отфильтрует заказы со статусом 'shipped', а затем выполнит JOIN с клиентами. Хотя физическое выполнение может отличаться (используя индексы), логически WHERE применяется раньше.

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

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

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

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