Salt la conținutul principal
Modulul 1 · Lecția 4 din 44/57 în curs~8 min
Lecții din modul (4/4)

Sortare cu ORDER BY

SQL nu garantează ordinea rândurilor returnate de un SELECT: dacă vrei o comandă deterministă, trebuie să o ceri în mod explicit cu ORDER BY:

SQL
SELECT <colonne>
FROM   <tabella>
[WHERE <condizione>]
ORDER BY <colonna> [ASC|DESC] [, <altra-colonna> [ASC|DESC] …];
  • ASC este valoarea implicită: ordine crescătoare (1 → 9, A → Z, vechi → recent).
  • DESC sortează descrescător (9 → 1, Z → A, recent → vechi).
  • Puteți sorta după mai multe coloane: al doilea criteriu rupe legăturile cu primul.

Exemple

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;

Încearcă

Exercițiu#sql.m1.l4.e1
Încercări: 0Se încarcă…

Extrageți numele (numele) și salariul (salariul) tuturor angajaților, sortați de la cel mai mare salariu la cel mai mic.

Se încarcă editorul...
Afișează indiciu

ORDER BY salariu DESC pune pe primul loc pe cei mai bine plătiți angajați.

Soluție disponibilă după 3 încercări

Exercițiu de revizuire

Exercițiu#sql.m1.l4.e2
Încercări: 0Se încarcă…

Extrageți numele (numele), ID-ul departamentului și salariul (salariul) tuturor angajaților, sortați mai întâi după ID-ul departamentului crescător și, în cadrul aceluiași departament, de la cel mai mare salariu la cel mai mic.

Se încarcă editorul...
Afișează indiciu

Puteți trece două coloane separate prin virgulă la ORDER BY, fiecare cu propriul său ASC sau DESC.

Soluție disponibilă după 3 încercări