Только начинаю разбираться с SQL и возник такой вопрос:
помимо стандартного порядка SELECT ... FROM ... WHERE ...
возможны ли следующие комбинации:
SELECT ... FROM (SELECT ... FROM ... WHERE ... )
SELECT ... WHERE ... FROM
SELECT ... 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
), отсортировав их по такому-то признаку.Почитайте учебник, там всё простым языком расписано.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Ситуация: нужно получить тип byte после операции int/intЕсли результат входит в диапазон byte, то вывести его, если не входит, то вывести сообщение-ошибку
Использую данные в формате JSON , которые хранятся внутри приложения в папке assets/station/musicjson