ORDER BY – sortowanie wyników zapytania – Kurs SQL
W języku SQL możesz sortować wynik zapytania stosując klauzulę ORDER BY. Sortowanie może odbywać się po jednej, bądź wielu kolumnach. Dodatkowo możesz wskazać czy posortowane dane mają być wyświetlane w kolejności:
ASC – rosnącej (domyślne ustawienie)DESC – malejącej
Czas na przykłady. Oprzemy je o poniższą przykładową tabelę wynagrodzenia.
Przykład 1:
Posortujmy tabelę wynagrodzenia po polu wynagrodzenie w kolejności malejącej (DESC)
SELECT * FROM wynagrodzenia ORDER BY wynagrodzenie DESC;
W niektórych silnikach bazodanowych przy sortowaniu zamiast nazwy kolumny możesz podawać numer jej wystąpienia w zapytaniu. Dla przykładu kolumna wynagrodzenie występuje na 4 pozycji, zatem zapytanie może wyglądać również jak poniżej:
SELECT * FROM wynagrodzenia ORDER BY 4 DESC;
Wynik obu powyższych zapytań będzie taki sam i wygląda następująco:
Przykład 2:
Tym razem do sortowania wykorzystamy dwie kolumny. Niech będą to miesiąc rosnąco (ASC) oraz id_pracownika malejąco (DESC). Spójrzmy na gotowe zapytanie SQL:
SELECT * FROM wynagrodzenia ORDER BY miesiac ASC, id_pracownika DESC;
lub odpowiednik z wykorzystaniem numerów kolumn:
SELECT * FROM wynagrodzenia ORDER BY 2 ASC, 1 DESC;


