Сортировка записей по числу, а если число - ноль, то по по фамилии в алфавитном порядке - MySQL

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Помогите пожалуйста составить запрос. Требуется следующее: отсортировать записи по полю `test` (кол-во баллов - int(2)) в обратном порядке, от большего к меньшему, а если поле равно 0, то по полю `surname` (фамилия - text) в алфавитном порядке. Сейчас запрос выглядит так:
SELECT `surname`, `name`, `test` FROM `users` ORDER BY `test` DESC
В SQL-запросах не очень силен. Заранее спасибо!

Решение задачи: «Сортировка записей по числу, а если число - ноль, то по по фамилии в алфавитном порядке»

textual
Листинг программы
SELECT `surname`, `name`, `test` FROM `users` ORDER BY `test` DESC, `surname`

Объяснение кода листинга программы

  1. SELECT — это команда для выбора данных из базы данных
  2. surname, name, test — это названия столбцов, из которых выбираются данные
  3. users — это название таблицы, из которой выбираются данные
  4. ORDER BY — это команда для сортировки выбранных данных
  5. test DESC — это параметр сортировки, указывающий на сортировку по убыванию значения столбца test
  6. surname — это параметр сортировки, указывающий на сортировку по алфавитному порядку значений столбца surname
  7. В итоге будет получен список пользователей, отсортированный по убыванию значения столбца test, а при равных значениях test сортировка будет по алфавитному порядку значений столбца surname

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5
Похожие ответы