SQL - klauzula ORDER BY
SQL ORDER BYKlauzula służy do sortowania danych w kolejności rosnącej lub malejącej na podstawie jednej lub większej liczby kolumn. Niektóre bazy danych domyślnie sortują wyniki zapytania w kolejności rosnącej.
Składnia
Podstawowa składnia klauzuli ORDER BY jest następująca -
SELECT column-list
FROM table_name
[WHERE condition]
[ORDER BY column1, column2, .. columnN] [ASC | DESC];
W klauzuli ORDER BY można użyć więcej niż jednej kolumny. Upewnij się, że kolumna, której używasz do sortowania, powinna znajdować się na liście kolumn.
Przykład
Rozważ tabelę CUSTOMERS zawierającą następujące rekordy -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
+----+----------+-----+-----------+----------+
Poniższy blok kodu zawiera przykład, który posortowałby wynik w kolejności rosnącej według NAZWY i PŁATNOŚCI -
SQL> SELECT * FROM CUSTOMERS
ORDER BY NAME, SALARY;
Dałoby to następujący wynik -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
+----+----------+-----+-----------+----------+
Poniższy blok kodu zawiera przykład, który posortowałby wynik w kolejności malejącej według nazwy.
SQL> SELECT * FROM CUSTOMERS
ORDER BY NAME DESC;
Dałoby to następujący wynik -
+----+----------+-----+-----------+----------+
| ID | NAME | AGE | ADDRESS | SALARY |
+----+----------+-----+-----------+----------+
| 1 | Ramesh | 32 | Ahmedabad | 2000.00 |
| 7 | Muffy | 24 | Indore | 10000.00 |
| 6 | Komal | 22 | MP | 4500.00 |
| 2 | Khilan | 25 | Delhi | 1500.00 |
| 3 | kaushik | 23 | Kota | 2000.00 |
| 5 | Hardik | 27 | Bhopal | 8500.00 |
| 4 | Chaitali | 25 | Mumbai | 6500.00 |
+----+----------+-----+-----------+----------+