Twoje Centrum Szkoleniowe

Nauczmy się dziś czegoś nowego!

Kurs programowania - SQL

Sortowanie wyników (ORDER BY)

Sortowanie wyników to ważna część pracy z bazami danych. Dzięki klauzuli ORDER BY możemy uporządkować dane w taki sposób, aby były łatwiejsze do zrozumienia i przejrzyste. Możemy na przykład posortować uczniów według nazwiska, daty urodzenia albo oceny, co sprawia, że wyniki są bardziej zrozumiałe i wygodne do analizy.

W tej sekcji dowiesz się, jak używać ORDER BY, aby sortować wyniki według jednej lub kilku kolumn, a także jak określić kierunek sortowania (rosnąco lub malejąco).

Składnia ORDER BY

Aby posortować wyniki zapytania, używamy ORDER BY na końcu zapytania SELECT. Możemy sortować wyniki według jednej kolumny lub kilku kolumn.

Podstawowa składnia:

SELECT kolumna1, kolumna2 
FROM tabela 
ORDER BY kolumna1 [ASC|DESC], kolumna2 [ASC|DESC];
  • ASC (ascending) oznacza sortowanie rosnące (jest to ustawienie domyślne).
  • DESC (descending) oznacza sortowanie malejące.

Jeśli nie podamy ASC ani DESC, SQL domyślnie posortuje wyniki rosnąco.

Przykłady Użycia ORDER BY

1. Sortowanie według Jednej Kolumny

Przykład: Posortowanie uczniów według nazwiska w kolejności rosnącej.

W tym przykładzie wyniki będą posortowane według kolumny nazwisko w kolejności alfabetycznej (rosnąco).

SELECT imie, nazwisko 
FROM Uczen 
ORDER BY nazwisko ASC;

2. Sortowanie według Jednej Kolumny Malejąco

Przykład: Posortowanie uczniów według oceny w kolejności malejącej.

W tym przykładzie wyniki będą posortowane według kolumny ocena od najwyższej do najniższej oceny.

SELECT imie, nazwisko, ocena 
FROM Oceny 
ORDER BY ocena DESC;

3. Sortowanie według Kilku Kolumn

Możemy także posortować wyniki według kilku kolumn jednocześnie. W takim przypadku SQL najpierw sortuje według pierwszej kolumny, a potem według drugiej, jeśli wartości w pierwszej kolumnie są takie same.

Przykład: Posortowanie uczniów według klasy (rosnąco), a następnie według nazwiska (rosnąco).

W tym przykładzie wyniki będą najpierw posortowane według kolumny klasa_id, a następnie, w ramach każdej klasy, według kolumny nazwisko.

SELECT imie, nazwisko, klasa_id 
FROM Uczen 
ORDER BY klasa_id ASC, nazwisko ASC;

Sortowanie z ORDER BY i LIMIT

Często używamy ORDER BY razem z LIMIT, aby wyświetlić na przykład pięciu najlepszych uczniów albo najnowsze wpisy. LIMIT pozwala ograniczyć liczbę wyników zwracanych przez zapytanie.

Przykład: Pobranie trzech uczniów z najwyższą oceną.

W tym przykładzie zapytanie zwraca trzech uczniów, którzy mają najwyższe oceny.

SELECT imie, nazwisko, ocena 
FROM Oceny 
ORDER BY ocena DESC 
LIMIT 3;

Testy przypięte do lekcji
Aby uzyskać dostęp do testów i ćwiczeń interaktywnych - Zaloguj się
Aby widzieć ocenę lekcji - Zaloguj się