Passer au contenu principal
eLearner.app
Module 1 · Leçon 4 sur 44/57 dans le cours~8 min
Leçons du module (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).
  • DESC ordina 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

Exercice#sql.m1.l4.e1
Tentatives : 0Chargement…

Estrai cognome (last_name) e stipendio (salary) di tutti i dipendenti, ordinati dallo stipendio più alto al più basso.

Chargement de l'éditeur…
Afficher l'indice

ORDER BY salary DESC mette per primi i più pagati.

Solution disponible après 3 tentatives

Esercizio di ripasso

Exercice#sql.m1.l4.e2
Tentatives : 0Chargement…

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.

Chargement de l'éditeur…
Afficher l'indice

Puoi passare a ORDER BY due colonne separate da virgola, ognuna con il suo ASC o DESC.

Solution disponible après 3 tentatives