Ознайомлення з оператором ORDER BY в MySQL

У сьогоднішньому уроці ми розглянемо на практиці те, як сортувати результати вибірки з бази даних за допомогою оператора ORDER BY в MySQL.

 

 

Основи оператора ORDER BY в MySQL

Коли ви використовуєте інструкцію SELECT для запиту даних з таблиці, результуючий набір не сортується. Це означає, що рядки в наборі результатів можуть бути в будь-якому порядку.

Щоб впорядкувати набір результатів, вам потрібно додавати умову ORDER BY в інструкцію SELECT. Нижче показаний синтаксис умови ORDER BY:

SELECT
 select_query
FROM
 table_name
ORDER BY
 column_name_1 [ASC|DESC],
 column_name_2 [ASC|DESC],
 ...;

 

 

У цьому синтаксисі ви вказуєте один або декілька стовпців, які ви хочете впорядкувати після умови ORDER BY.

ASC означає сортування набору результатів по зростанню, а DESC – сортування набору результатів по спадаючій.

 

Ця умова ORDER BY сортує результуючий набір в порядку зростання:

ORDER BY column_name_1 ASC;

 

А ця умова ORDER BY сортує набір результатів в порядку убування:

ORDER BY column_name_1 DESC;

 

За замовчуванням для умови ORDER BY використовується ASC, якщо ви явно не вказали будь-які опції.

Отже, такі приклади еквівалентні:

ORDER BY column_name_1 ASC;
та
ORDER BY column_name_1;

 

 

Якщо ви хочете відсортувати результуючий набір за кількома стовпцями, вкажіть розділений комами список стовпців в умові ORDER BY:

ORDER BY
 column_name_1,
 column_name_2;

 

 

Можна впорядкувати результат по одному стовпцю в порядку зростання, а по іншому стовпцю в порядку убування:

ORDER BY
 column_name_1 ASC,
 column_name_2 DESC;

 

 

У цьому випадку умова ORDER BY:

  • Спершу відсортує набір результатів за значеннями в column_name_1 в порядку зростання.
  • Потім відсортує відсортований результат за значеннями в column_name_2 в порядку убування. Зверніть увагу, що на цьому етапі порядок значень в column_name_1 не зміниться, змінюється тільки порядок значень в column_name_2.

 

Зверніть увагу, що умова ORDER BY завжди виконується після умов FROM і SELECT.

 

 

Приклади виразів оператора ORDER BY в MySQL

 

Приклад №1: Використання умови ORDER BY для сортування в одному стовпці

У наступному запиті використовується умова ORDER BY для сортування автомобілів за значеннями в стовпці carYear в порядку зростання.

SELECT
 carYear,
 carBrand
FROM
 cars
ORDER BY
 carYear;

 

 

Якщо ви хочете впорядкувати автомобілі за роком випуску в порядку убування, використовуйте DESC після стовпчика carYear в умові ORDER BY, як показано в наступному запиті:

SELECT
 carYear,
 carBrand
FROM
 cars
ORDER BY
 carYear DESC;

 

 

 

Приклад №2: Використання умови ORDER BY для сортування значень в кількох стовпчиках

Якщо ви хочете впорядкувати автомобілі за роком випуску в порядку убування, а потім по бренду (марці) в порядку зростання, у відповідному стовпці вкажіть DESC і ASC наступним чином:

SELECT
 carYear,
 carBrand
FROM
 cars
ORDER BY
 carYear DESC,
 carBrand ASC;

 

 

У цьому прикладі умова ORDER BY сортує результуючий набір за роком випуску автомобіля в порядку убування, а потім сортує результуючий набір по марці автомобіля в порядку зростання, щоб отримати остаточний набір результатів.

 

 

Приклад №3: Умова ORDER BY для сортування з використанням виразу

Наступний запит вибирає позиції замовлення з таблиці orderDetails. Він розраховує проміжний підсумок для кожної окремої позиції і сортує результуючий набір на основі проміжного підсумку.

SELECT
 orderNumber,
 orderQuantity * eachPrice
FROM
 orderDetails
ORDER BY
 orderQuantity * eachPrice DESC;

 

 

 

З сьогоднішнього уроку ви дізналися, як використовувати умову ORDER BY в MySQL для сортування рядків в наборі результатів по одному або кількох стовпцях в порядку зростання або зменшення.

 

Share
Теги: mysql

Останні пости

202ЗСУ

SebWeo щиро вітає усіх із Новим роком! Бажаємо особистих перемог, а головне, найбажанішої — швидкої… Читати далі

31/12/2022

Який подарунок можна вручити батькові на День захисника України?

У кожної української сім'ї є свої певні традиції та улюблені свята, особливо усі ми любимо… Читати далі

19/08/2022

Демокріт

Ми потребуємо не стільки допомоги друзів, а більше тієї впевненості, що ми її отримаємо Демокріт… Читати далі

21/02/2022

Майк Тайсон

Коли мені важко, я завжди нагадую собі про те, що якщо я здамся — краще… Читати далі

12/02/2022

25 корисних порад та рішень jQuery, які ви повинні знати

jQuery – це швидка і досить невелика бібліотека JavaScript. Вона спрощує створення інтерактивних та приголомшливих… Читати далі

09/02/2022

Йоганн Вольфганг фон Гете

Кожен чує тільки те, що він розуміє Йоганн Вольфганг фон Гете   Читати далі

03/02/2022