ORDER BY w SQL
Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Co to jest ORDER BY w SQL?
ORDER BY to klauzula SQL służąca do sortowania wyników zapytania. Pozwala uporządkować dane rosnąco albo malejąco według jednej lub kilku kolumn.
Sortowanie rosnące
Domyślnie ORDER BY sortuje dane rosnąco, czyli ASC.
SELECT imie, nazwisko
FROM uczniowie
ORDER BY nazwisko;
To zapytanie zwróci uczniów uporządkowanych alfabetycznie według nazwiska.
Można też zapisać jawnie:
SELECT imie, nazwisko
FROM uczniowie
ORDER BY nazwisko ASC;
Sortowanie malejące
Do sortowania malejącego używa się DESC.
SELECT nazwa, cena
FROM produkty
ORDER BY cena DESC;
To zapytanie wyświetli produkty od najdroższego do najtańszego.
Sortowanie po kilku kolumnach
SELECT imie, nazwisko, klasa
FROM uczniowie
ORDER BY klasa ASC, nazwisko ASC;
Najpierw dane zostaną uporządkowane według klasy, a następnie według nazwiska.
ORDER BY a DISTINCT
ORDER BY odpowiada za kolejność danych, natomiast DISTINCT usuwa powtórzenia z wyniku.
SELECT DISTINCT miasto
FROM klienci
ORDER BY miasto ASC;
To zapytanie najpierw wybierze unikalne miasta, a następnie posortuje je alfabetycznie.
Ważne na egzaminie
Jeśli w odpowiedzi pojawia się „zostaną uporządkowane”, chodzi o ORDER BY, a nie o DISTINCT.