- ORDER BY — це пропозиція в SQL, яка використовується із запитом SELECT для отримання записів із таблиці в порядку зростання або спадання.
- Подібно до того, як ми сортуємо цілі числа та рядкові значення, що зберігаються в стовпці таблиці, ми можемо сортувати дати, що зберігаються в стовпці таблиці SQL.
- За замовчуванням усі записи будуть відсортовані в порядку зростання. Для сортування записів у порядку спадання використовується ключове слово DESC.
Давайте розглянемо кілька практичних прикладів, щоб краще зрозуміти цю концепцію. Ми будемо використовувати базу даних MySQL для написання всіх запитів.
Припустімо, що ми створили таблицю під назвою співробітники в базі даних MySQL із такими даними:
ID | Ім'я | Зарплата | Дата_приєднання | DOB |
---|---|---|---|---|
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991-01-28 18:06:08 |
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990-05-15 19:10:00 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983-02-20 12:18:45 |
4 | Анант Десаї | 59000 | 2018-08-27 | 1978-06-29 15:45:13 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999-03-21 02:14:56 |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998-08-02 13:00:01 |
приклад 1:
Напишіть запит, щоб відобразити всі відомості про співробітників у порядку зростання їх дати народження.
Запит:
mysql> SELECT *FROM employees ORDER BY DOB;
Оскільки ми хотіли відсортувати записи в порядку зростання дати народження співробітників, ми застосували пункт ORDER BY до стовпця «DOB».
Ви отримаєте наступний результат:
публічна проти приватної java
ID | Ім'я | Зарплата | Дата_приєднання | DOB |
---|---|---|---|---|
4 | Анант Десаї | 59000 | 2018-08-27 | 1978-06-29 15:45:13 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983-02-20 12:18:45 |
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990-05-15 19:10:00 |
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991-01-28 18:06:08 |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998-08-02 13:00:01 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999-03-21 02:14:56 |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються відповідно до порядку зростання DOB.
приклад 2:
Напишіть запит, щоб відобразити всі відомості про співробітників, розташовані в порядку спадання дат їх приєднання.
Запит:
mysql> SELECT *FROM employees ORDER BY Joining_Date DESC;
Оскільки ми хотіли відсортувати записи в порядку спадання дати приєднання співробітників, ми застосували речення ORDER BY із ключовим словом DESC у стовпці «Дата_приєднання».
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Дата_приєднання | DOB |
---|---|---|---|---|
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998-08-02 13:00:01 |
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990-05-15 19:10:00 |
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991-01-28 18:06:08 |
4 | Анант Десаї | 59000 | 2018-08-27 | 1978-06-29 15:45:13 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983-02-20 12:18:45 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999-03-21 02:14:56 |
Результати, отримані за наведеним вище запитом, показують, що записи відображаються в порядку спадання дат приєднання.
приклад 3:
Напишіть запит, щоб відобразити всі відомості про співробітників у порядку зростання їхнього року народження.
Запит:
mysql> SELECT ID, Name, Salary, Joining_Date, DATE_FORMAT (DOB, '%Y') AS Year_of_Birth FROM employees ORDER BY DATE_FORMAT (DOB, '%Y');
Оскільки ми хотіли відсортувати записи в порядку зростання року народження співробітників, ми застосували пункт ORDER BY. Функція DATE_FORMAT () застосована до стовпця DOB з параметром '%Y', щоб отримати лише рік із 'DOB'.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Дата_приєднання | Рік народження |
---|---|---|---|---|
4 | Анант Десаї | 59000 | 2018-08-27 | 1978 рік |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983 рік |
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990 рік |
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991 рік |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998 рік |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999 рік |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються в порядку зростання року народження працівника.
Приклад 4:
Напишіть запит, щоб відобразити всі відомості про співробітників, розташовані в порядку спадання годин їх народження.
Запит:
mysql> SELECT ID, Name, Salary, Joining_Date, DATE_FORMAT (DOB, '%H') AS Hour_Of_Birth FROM employees ORDER BY DATE_FORMAT (DOB, '%H') DESC;
Оскільки ми хотіли відсортувати записи в порядку спадання годин народження співробітників, ми застосували речення ORDER BY із ключовим словом DESC. Функція DATE_FORMAT () застосована до стовпця DOB з параметром '%H', щоб отримати лише годину народження зі стовпця 'DOB'.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Дата_приєднання | Година_народження |
---|---|---|---|---|
2 | Кунал Мохіт | 34000 | 2021-01-01 | 19 |
1 | Рохіт Мор | 50000 | 2020-02-08 | 18 |
4 | Анант Десаї | 59000 | 2018-08-27 | п'ятнадцять |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 13 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 12 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 02 |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються в порядку спадання години народження працівника.
Приклад 5:
Напишіть запит, щоб відобразити всі відомості про співробітників, розташованих у порядку зростання їхнього року приєднання.
Цикл while і do while у java
Запит:
mysql> SELECT ID, Name, Salary, DOB, DATE_FORMAT (Joining_Date, '%Y') AS Year_Of_Joining FROM employees ORDER BY DATE_FORMAT (Joining_Date, '%Y');
Оскільки ми хотіли відсортувати записи в порядку зростання року приєднання співробітників, ми застосували пункт ORDER BY. Функція DATE_FORMAT () застосована до стовпця Joining_Date з параметром '%Y', щоб отримати лише рік із 'Joining_Date'.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Рік_приєднання | DOB |
---|---|---|---|---|
5 | Крішна Шарма | 48000 | 2010 рік | 1999-03-21 02:14:56 |
3 | Саурабх Джа | 61000 | 2015 рік | 1983-02-20 12:18:45 |
4 | Анант Десаї | 59000 | 2018 рік | 1978-06-29 15:45:13 |
1 | Рохіт Мор | 50000 | 2020 рік | 1991-01-28 18:06:08 |
2 | Кунал Мохіт | 34000 | 2021 рік | 1990-05-15 19:10:00 |
6 | Бхавеш Джайн | 37000 | 2021 рік | 1998-08-02 13:00:01 |
Результати, отримані за допомогою наведеного вище запиту, показують, що записи відображаються в порядку зростання року приєднання співробітників.
Приклад 6:
Напишіть запит, щоб відобразити всі відомості про співробітників у порядку спадання дня приєднання співробітників.
Запит:
mysql> SELECT ID, Name, Salary, DAY (Joining_Date) AS Day_Of_Joining, DOB FROM employees ORDER BY DAY (Joining_Date) DESC;
Оскільки ми хотіли відсортувати записи в порядку спадання дня приєднання співробітників, ми застосували пропозицію ORDER BY із ключовим словом DESC. Функція DAY () застосована до стовпця 'Joining_Date', щоб отримати лише день приєднання з Joining_Date.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | День_приєднання | DOB |
---|---|---|---|---|
4 | Анант Десаї | 59000 | 27 | 1978-06-29 15:45:13 |
5 | Крішна Шарма | 48000 | 23 | 1999-03-21 02:14:56 |
1 | Рохіт Мор | 50000 | 8 | 1991-01-28 18:06:08 |
6 | Бхавеш Джайн | 37000 | 3 | 1998-08-02 13:00:01 |
2 | Кунал Мохіт | 34000 | 1 | 1990-05-15 19:10:00 |
3 | Саурабх Джа | 61000 | 1 | 1983-02-20 12:18:45 |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються в порядку спадання дня приєднання співробітників.
Приклад 7:
Напишіть запит для відображення всіх відомостей про співробітників у порядку зростання дня народження співробітників.
Запит:
mysql> SELECT ID, Name, Salary, Joining_Date, DAY (DOB) AS Day_Of_Birth FROM employees ORDER BY DAY (DOB);
Оскільки ми хотіли відсортувати записи в порядку зростання дня народження співробітників, ми застосували пункт ORDER BY. Функція DAY () застосовується до стовпця 'DOB', щоб отримати лише день народження з DOB.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Рік_приєднання | День_народження |
---|---|---|---|---|
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 2 |
2 | Кунал Мохіт | 34000 | 2021-01-01 | п'ятнадцять |
3 | Саурабх Джа | 61000 | 2015-05-01 | двадцять |
5 | Крішна Шарма | 48000 | 2010-10-23 | двадцять один |
1 | Рохіт Мор | 50000 | 2020-02-08 | 28 |
4 | Анант Десаї | 59000 | 2018-08-27 | 29 |
Результати, отримані за наведеним вище запитом, показують, що записи відображаються в порядку зростання дня народження працівника.
Приклад 8:
Напишіть запит, щоб відобразити всі відомості про співробітників у порядку зростання місяця народження працівника.
Запит:
mysql> SELECT ID, Name, Salary, Joining_Date, DOB FROM employees ORDER BY MONTH (DOB);
ID | Ім'я | Зарплата | Дата_приєднання | DOB |
---|---|---|---|---|
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991-01-28 18:06:08 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983-02-20 12:18:45 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999-03-21 02:14:56 |
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990-05-15 19:10:00 |
4 | Анант Десаї | 59000 | 2018-08-27 | 1978-06-29 15:45:13 |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998-08-02 13:00:01 |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються в порядку зростання місяця народження працівника.
Приклад 9:
Напишіть запит, щоб відобразити всі відомості про співробітників у порядку зростання місяця приєднання працівника.
Запит:
mysql> SELECT ID, Name, Salary, Joining_Date, DOB FROM employees ORDER BY MONTH (Joining_Date);
Оскільки ми хотіли відсортувати записи в порядку зростання місяця приєднання співробітників, ми застосували пункт ORDER BY. Функція MONTH () застосовується до стовпця 'Joining_Date', щоб отримати лише місяць приєднання з Joining_Date.
Ви отримаєте наступний результат:
ID | Ім'я | Зарплата | Дата_приєднання | DOB |
---|---|---|---|---|
2 | Кунал Мохіт | 34000 | 2021-01-01 | 1990-05-15 19:10:00 |
1 | Рохіт Мор | 50000 | 2020-02-08 | 1991-01-28 18:06:08 |
3 | Саурабх Джа | 61000 | 2015-05-01 | 1983-02-20 12:18:45 |
6 | Бхавеш Джайн | 37000 | 2021-07-03 | 1998-08-02 13:00:01 |
4 | Анант Десаї | 59000 | 2018-08-27 | 1978-06-29 15:45:13 |
5 | Крішна Шарма | 48000 | 2010-10-23 | 1999-03-21 02:14:56 |
Результати, отримані з наведеного вище запиту, показують, що записи відображаються в порядку зростання місяця приєднання працівника.
пріоритетна черга c++