Lekcje modułu (4/4)
Sortowanie z ORDER BY
SQL nie gwarantuje kolejności wierszy zwracanych przez SELECT: jeśli
chcesz deterministycznego porządku, musisz o to wyraźnie poprosić
KODEF1:
SELECT <colonne>
FROM <tabella>
[WHERE <condizione>]
ORDER BY <colonna> [ASC|DESC] [, <altra-colonna> [ASC|DESC] …];ASCjest domyślnym: rosnącym porządkiem (1 → 9, A → Z, stare → ostatnie).DESCsortuje malejąco (9 → 1, Z → A, ostatnie → stare).- Można sortować według wielu kolumn: drugie kryterium przerywa powiązanie pierwszego.
Przykłady
-- Dal più recente assunto al più vecchio:
SELECT first_name, last_name, hired_on
FROM employees
ORDER BY hired_on DESC;
-- Per dipartimento crescente, poi per stipendio decrescente:
SELECT *
FROM employees
ORDER BY department_id, salary DESC;Spróbuj
Wyodrębnij nazwisko (nazwisko) i wynagrodzenie (wynagrodzenie) wszystkich pracowników, posortowane od najwyższej do najniższej.
Pokaż wskazówkę
ORDER BY wynagrodzenie DESC na pierwszym miejscu stawia najlepiej opłacanych pracowników.
Rozwiązanie dostępne po 3 próbach
Przejrzyj ćwiczenie
Wyodrębnij nazwisko (nazwisko), identyfikator_działu i wynagrodzenie (wynagrodzenie) wszystkich pracowników, posortowane najpierw rosnąco według identyfikatora_działu i w obrębie tego samego działu od najwyższej do najniższej pensji.
Pokaż wskazówkę
Do ORDER BY możesz przekazać dwie kolumny oddzielone przecinkiem, każda z własnym ASC lub DESC.
Rozwiązanie dostępne po 3 próbach