Modulo 1 · Lezione 4 di 44/57 nel corso~8 min
Lezioni del modulo (4/4)
Ordinare con ORDER BY
SQL non garantisce l'ordine delle righe restituite da un SELECT: se vuoi un
ordine deterministico, devi chiederlo esplicitamente con ORDER BY:
SQL
SELECT <colonne>
FROM <tabella>
[WHERE <condizione>]
ORDER BY <colonna> [ASC|DESC] [, <altra-colonna> [ASC|DESC] …];ASCè il default: ordine crescente (1 → 9, A → Z, vecchio → recente).DESCordina decrescente (9 → 1, Z → A, recente → vecchio).- Puoi ordinare per più colonne: il secondo criterio rompe i pareggi del primo.
Esempi
SQL
-- 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;Prova tu
Esercizio#sql.m1.l4.e1
Tentativi: 0Caricamento…
Estrai cognome (last_name) e stipendio (salary) di tutti i dipendenti, ordinati dallo stipendio più alto al più basso.
Caricamento editor…
Mostra suggerimento
ORDER BY salary DESC mette per primi i più pagati.
Soluzione disponibile dopo 3 tentativi
Esercizio di ripasso
Esercizio#sql.m1.l4.e2
Tentativi: 0Caricamento…
Estrai cognome (last_name), department_id e stipendio (salary) di tutti i dipendenti, ordinati prima per department_id crescente e, a parità di dipartimento, dallo stipendio più alto al più basso.
Caricamento editor…
Mostra suggerimento
Puoi passare a ORDER BY due colonne separate da virgola, ognuna con il suo ASC o DESC.
Soluzione disponibile dopo 3 tentativi