Выбор ответа Junior SELECT и фильтрация спрашивают часто обновлено

Логический порядок выполнения SELECT

Вопрос

В каком логическом порядке выполняются части запроса?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY, LIMIT. Сначала определяется источник строк (FROM и JOIN), затем строки фильтруются (WHERE), группируются (GROUP BY), фильтруются группы (HAVING), вычисляются выражения SELECT, сортировка и ограничение.

Варианты ответа

  1. SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT
  2. FROM, WHERE, SELECT, GROUP BY, HAVING, ORDER BY, LIMIT
  3. FROM, GROUP BY, WHERE, HAVING, SELECT, LIMIT, ORDER BY
  4. FROM, WHERE, GROUP BY, HAVING, SELECT, ORDER BY, LIMITправильный ответ

Разбор

Сначала определяется источник строк (FROM и JOIN), затем строки фильтруются (WHERE), группируются (GROUP BY), фильтруются группы (HAVING), вычисляются выражения SELECT, сортировка и ограничение. Поэтому алиас из SELECT виден в ORDER BY, но не в WHERE. SELECT не идёт первым, хотя пишется первым. WHERE не может идти после GROUP BY: для фильтра групп есть HAVING. LIMIT применяется к уже отсортированному результату.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.