1. Алиасы или псевдонимы
Позволяет заменить имя столбца или таблицы при в SELECT
запросе.
Структура:
В первом случае имя столбца заменяется именем, стоящее после оператора AS. Внутри других операторов (например, WHERE) вместо реального имени столбца можно использовать имя, заданное алиасом. Также, при выводе результата запроса данный столбец будет отобразиться под новым именем (только в запросе! в базе данных останется старое название).
Во втором случае таблица получит новое название. Аналогично ситуации с переименованием столбца.
Такое переименование используется для визуального упрощения запроса, когда реальное название слишком длинное или при выводе его в результате запроса (когда столбец образован из нескольких других или подзапроса), а также когда есть повторяющиеся столбцы.
Пример:
2. Формирование новых столбцов
Позволяет формировать новый столбец на основе существующих.
Структура:
В качестве выражения может быть как поле таблицы, так и любой текст. При этом текст складывается путём обычного склеивания («1»+ «2»=«12»), а числа складываются обычным путём (1+1=2).
Пример:
3. DISTINCT
Позволяет устранить повторяющиеся записи при выборке.
Структура:
Так же как и в обычном запросе, после SELECT необходимо
указать список полей, а после FROM –список таблиц. Однако в случае с DISTINCT
результат не будет иметь повторяющихся записей.
Пример:
4. LIMIT
Позволяет ограничить число записей при выводе запроса.
Структура:
В результате работы запроса формируется таблица. Оператору LIMIT можно указать диапазон, если сразу после первого числа через запятую записать другое число.
Пример:
5. ORDER BY
Позволяет отсортировать результат по одному или нескольким
столбцам
Структура:
После того, как SELECT сформирует результат запроса, оператор ORDER BY отсортирует их сл. образом: сначала результат будет отсортирован по первому полю, указанному в списке полей сразу после ORDER BY. Если в этом поле есть одинаковые записи, то они будут отсортированы по второму полю, по третьему и т.д. Если после списка полей указать ASC, то будет осуществлена по возрастанию,
если DESC – по убыванию. Если ничего не указать, то как и при ASC - по возрастанию.
Также можно отсортировать в случайном порядке:
Спасибо за внимание.
1 | SELECT <Имя столбца> AS <Новое имя> |
1 | SELECT <Имя столбца> FROM <Имя таблицы> AS <Новое имя> |
1 2 3 | SELECT ochen_krasiviy_krasny_background as background FROM backgrounds; -- или SELECT id, name , ( SELECT count (mails.id) FROM mails WHERE mails. to =users.id) as mails FROM users;<br> |
1 | SELECT <Выражение> +<Выражение>+…+<Выражение> |
1 | SELECT id, name , (likes-dislikes) as rating FROM users; |
1 | SELECT DISTINCT <Список полей> FROM <Список таблиц> |
1 2 3 4 5 6 | -- выведет только уникальные имена пользователей SELECT DISTINCT name FROM users; -- !!! ОСТОРОЖНО С: -- Выведет все записи, т.к. id - уникален и делает уникальной всю строку SELECT DISTINCT id, name FROM users;<br> |
1 | SELECT <Список полей> FROM <Список таблиц> LIMIT <Число>[,<Число2 >] |
1 2 3 4 | -- Выбрать первые 10 записей SELECT * FROM users LIMIT 10; -- Выбрать первые 10 записей, начиная с 20-ой строки SELECT * FROM users LIMIT 20, 10; |
1 | SELECT <Списко полей> FROM <Список таблиц> ORDER BY <Список полей> [ ASC | DESC ] [ WITH TIES] |
1 2 | -- Сортировка по id по убыванию SELECT id, name FROM users ORDER BY id DESC |
1 | SELECT <Списко полей> FROM <Список таблиц> ORDER BY RAND() |