Порядок исполнения операторов SQL

Среди перечисленных операторов логический порядок: WHERE → GROUP BY → HAVING → ORDER BY → OFFSET → LIMIT. Это не фиксированный физический план.

Короткий ответ

Что ответить на собеседовании

Среди перечисленных операторов логический порядок: WHERE → GROUP BY → HAVING → ORDER BY → OFFSET → LIMIT. Это не фиксированный физический план.

Подробный разбор

Ответ с пояснениями

Условие

Дан набор ключевых операторов SQL. Необходимо определить порядок их выполнения внутри СУБД (а не порядок их указания в тексте запроса).

ORDER BY, OFFSET, WHERE, LIMIT, HAVING, GROUP BY

Ответ

Среди перечисленных операторов логический порядок: WHERE → GROUP BY → HAVING → ORDER BY → OFFSET → LIMIT. Это не фиксированный физический план.

WHERE удаляет строки до группировки; GROUP BY формирует группы, HAVING отбирает их по условиям, часто агрегатным. После формирования результата ORDER BY задаёт порядок, OFFSET пропускает первые строки, LIMIT ограничивает оставшееся количество.

В полном запросе присутствуют также FROM/JOIN и SELECT. Оптимизатор может использовать индексы, переносить фильтры и вообще не выполнять отдельную сортировку, если порядок уже обеспечен планом. Поэтому «порядок операторов» корректнее понимать логически, а не как обязательную последовательность шагов процессора.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее