Только начинаю разбираться с SQL и возник такой вопрос:
помимо стандартного порядка SELECT ... FROM ... WHERE ...
возможны ли следующие комбинации:
SELECT ... FROM (SELECT ... FROM ... WHERE ... )SELECT ... WHERE ... FROMSELECT ... GROUP BY ... FROM ...Заранее спасибо за ответ!
Давайте сначала разберем, в каком порядке выполняется sql-запрос (рассмотрим по стандарту):
FROM - создаём простынку из данныхWHERE - накладываем условияGROUP BY - группируем, если есть агрегирующие функцииHAVING - условия на агрегирующие функцииSELECT - выбор нужных столбцов и вычисленияORDER BY - сортировкаТеперь рассмотрим порядок записи частей запроса:
SELECT column_name
FROM table_name
WHERE conditions
GROUP BY some_column_names
HAVING agg_column_name conditions
ORDER BY column_names desc/asc
Порядок записи запроса строго, как показано выше. Естественно, в запросе может не быть условий, агрегирующий функций и т.д., но суть остаётся такая.
Теперь по порядку ответы на вопросы:
FROM вы также можете использовать запрос, который вернёт некоторую таблицу, с которой вы уже будете работать. По сути, какая разница - есть у вас таблица в БД, или вы сами сделаете таблицу и будете использовать её потом?select) из таблицы (from) данные с условиями (where), отсортировав их по такому-то признаку.Почитайте учебник, там всё простым языком расписано.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости