Работая программистом в прикладном программирование, либо в вебе, зачастую приходится оперировать с SQL-запросами, делать обращения к базам данных. Потому хотелось бы немного рассказать о порядке исполнения самого SQL запроса. Я не буду рассказывать базовые вещи о [SELECT]. Описательную часть работы ее можно прочесть в интернете с достатком. Я расскажу о том, как нужно строить SQL запрос, понимая, что он выполняется не сразу, а последовательно.
Итак исполнение запроса идет в следующем порядке:
1. [FROM]
2. [WHERE]
3. [GROUP BY]
4. [HAVING]
5. [SELECT]
6. [ORDER BY]
Первое исполнение у нас проходит [FROM], где идет подключение таблиц, а также идет присвоение псевдонимов этим таблицам, если они есть. Вторым пунктом исполнения идут условия в разделе [WHERE]. Тут тоже все понятно, запрос обсекают разными условиями, где идет либо связка нескольких таблиц, либо уменьшение выборки данных. Третьим исполняется группировка табличных данных в разделе [GROUP BY]. Это важно, когда мы используем агрегатные функции. Четвертый раздел исполнения - это [HAVING]. Это также опциональный параметр оператора [SELECT] для указания условия на результат агрегатных функций. Затем пятым исполнение делает сам [SELECT], где все отобранные поля формируются для вывода подают программисту результат работы. После чего все эти данные сортируются в секции [ORDER BY].
Вот собственно все, что я хотел рассказать по этому поводу, как исполняется [SELECT] запрос, не касаясь вопросов учебного типичного материала.