Сортировка данных в SQL. SQL — это просто
Выполняем сортировку данных в SQL при помощи команды ORDER BY и ключевых слов ASC и DESC.
11К открытий25К показов
В предыдущей статье цикла вы освоили базовые команды SELECT и FROM и уже можете написать элементарный запрос к базе. В этой мы продолжим изучение английского (зачёркнуто) SQL и выучим ещё три слова: ORDER BY, ASC и DESC.
Если вы не знаете английский – можно открыть онлайн переводчик и найти перевод:
- ORDER BY – упорядочить (отсортировать) по;
- ASC – (сокращение от ascending – восходящий) порядок то есть сортировка от меньшего к большему (0, 1, 2, 3 .. ) в случае сортировки слов – по алфавиту (А -> Я);
- DESC – (сокращение от descending – нисходящий) порядок то есть сортировка от большего к меньшему (100, 99, 98 …). Слова в этом случае сортируются в порядке обратном алфавитному (Я -> А).
Как мы можем использовать эти ключевые слова в написании запросов? Например, так:
Если перевести запрос с английского на русский получим:
Выполним этот запрос получим следующий результат:
Как видите мы получили список студентов в алфавитном порядке. Выполним ещё задачу – отсортируем список студентов так чтобы в начале были студенты с более высокими оценками. Для этого напишем запрос:
Как видите порядок записей изменился – в начале списка отличники Сергей и Татьяна, а Илья со своей тройкой оказался внизу списка. Уделим ещё пару минут нашим отличникам. Они оба имеют оценку 5, значит при выполнении нашего запроса с сортировкой обе записи имеют равный приоритет и то что Сергей оказался выше Татьяны – дело случая. База данных не гарантирует порядок строк кроме того который явно указан в запросе. Если нам принципиально чтобы студенты с равными оценками были упорядочены по имени придется уточнить запрос следующим образом:
В этом запросе мы прописали что хотим получить данные отсортированные по убыванию оценки, а в случае если оценки равны – отсортировать такие строки по имени. Таким запросом мы гарантируем порядок выдачи строк вне зависимости от настроения базы данных.
Таким образом вы знаете уже пять слов из лексикона SQL и можете выполнить задания 3 и 9 на SQLtest.online
Следующий урок можно найти здесь а вопросы по теме задать можно тут.
11К открытий25К показов