SQL ET POSTGRE 5.35 Order By

Cette vidéo introduit la clause ORDER BY en PostgreSQL, qui permet de trier les résultats d'une requête SELECT selon une ou plusieurs colonnes. Par défaut, sans ORDER BY, les lignes sont retournées dans l'ordre où elles sont stockées en base, ce qui n'a aucune garantie de cohérence. ORDER BY rend le résultat prévisible et plus lisible.

Tri ascendant et descendant

La syntaxe place ORDER BY après la clause WHERE, suivie du nom de la colonne et éventuellement du mot-clé ASC (ascendant, par défaut) ou DESC (descendant). Par exemple, pour trier les films du plus ancien au plus récent :

SELECT titre, date_de_sortie
FROM films
ORDER BY date_de_sortie ASC;

Pour obtenir l'ordre inverse, du plus récent au plus ancien, on remplace ASC par DESC. ORDER BY fonctionne avec tous les types de données : entiers, dates, chaînes de caractères (tri alphabétique) et booléens. Il est aussi possible de trier sur plusieurs colonnes en les listant séparées par des virgules :

  • ORDER BY pays ASC, date_de_sortie DESC trie d'abord par pays alphabétique, puis par date décroissante
  • Chaque colonne peut avoir son propre ASC ou DESC
  • Les valeurs NULL sont placées en dernier en ASC, en premier en DESC (par défaut PostgreSQL)

ORDER BY est essentiel pour les requêtes destinées à un affichage utilisateur : listes alphabétiques, classements, fils chronologiques. Combiné avec LIMIT, il permet de récupérer les premiers ou derniers éléments selon un critère. C'est l'une des clauses les plus utilisées dans les requêtes SELECT en production.