Данные в таблицах базы данных хранятся неупорядоченно. Выполнив один и тот же запрос несколько раз можно получить один и тот же результат, но строки результата будут отсортированы по-разному.

Для гарантированной сортировки строк нужно в конце SQL запроса добавить предложение ORDER BY. Например, получим информацию о магазинах, отсортированную по названию:

SELECT store_id, name
  FROM store
 ORDER BY name
store_id name
900 Big
600 Umi
300 Адалин
301 Адалин-family
... ...

Чтобы отсортировать в обратном порядке, необходимо после поля для сортировки указать ключевое слово DESC (по умолчанию ASC - по возрастанию). Например отсортируем магазины по названию по убыванию:

SELECT store_id, name
  FROM store
 ORDER BY name DESC
store_id name
800 Универсам
201 Сатурн
100 Пионер
500 Март
200 Марс
... ...

Иногда необходимо при сортировке разбить данные на какие-то группы, а потом отсортировать данные уже в рамках каждой группы. Например отсортируем сотрудников по должностям, а в рамках каждой должности по имени:

SELECT employee_id,
       rank_id,
       last_name
  FROM employee
 ORDER BY rank_id, last_name
employee_id rank_id last_name
8 CEO Корсаков
7 CHIEF Вершинина
1 CHIEF Иванов
2 CHIEF Маккормик
3 CHIEF Матвеева

В общем случае столбцов для сортировки может быть сколько угодно.

2.8 Обработка NULL значений

2.10 Ограничение количества строк LIMIT