Ознайомлення з оператором 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

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

Чи варто купувати MacBook Air 13 M1: стислий огляд

Макбук Ейр — культова лінійка портативних комп'ютерів від Apple. Усі пристрої відрізняються витонченим дизайном, компактним… Читати далі

28/09/2023

Просування в Інтернеті – 10 найбільш дієвих SEO тактик

Якщо ви власник веб-сайту, ви не можете дозволити собі нехтувати SEO. Окрім основ просування та… Читати далі

24/09/2023

Які товари найбільш маржинальні

Високомаржинальні товари – це та категорія, яка забезпечує підприємству найвищий рівень прибутку через значну різницю… Читати далі

21/09/2023

Як працює рішення SD-WAN: Основи технології та сфери застосування

У сучасному світі, де бізнеси намагаються вдосконалити свої мережі та забезпечити безперервний доступ до додатків… Читати далі

15/09/2023

Які строки варто прописати у договорі про розробку програмного забезпечення, щоб зробити процес роботи комфортним та передбачуваним?

Чітке визначення термінів проекту формує очікування, зменшує ризик порушення дедлайнів та посилює продуктивність співпраці між… Читати далі

31/08/2023

Комп’ютер: недорогий і функціональний водночас

Важко уявити собі роботу, розваги, спілкування та дозвілля без комп'ютера. Він допомагає у різних сферах… Читати далі

30/08/2023