blanc Homme Confort 40 9500 Meilleure Basket Textile Qualité R82963861 Style Assurer q6FSF1Tn0

La commande ORDER BY permet de trier les lignes dans un résultat d’une requête SQL. Il est possible de trier les données sur une ou plusieurs colonnes, par ordre ascendant ou descendant.

Syntaxe

Une requête où l’on souhaite filtrer l’ordre des résultats utilise la commande ORDER BY de la sorte :

SELECT colonne1, colonne2
FROM table
ORDER BY colonne1

Par défaut les résultats sont classés par ordre ascendant, toutefois il est possible d’inverser l’ordre en utilisant le suffixe DESC après le nom de la colonne. Par ailleurs, il est possible de trier sur plusieurs colonnes en les séparant par une virgule. Une requête plus élaborée ressemblerait à cela :

SELECT colonne1, colonne2, colonne3
FROM table
ORDER BY colonne1 DESC, colonne2 ASC

A noter : il n’est pas obligé d’utiliser le suffixe “ASC” sachant que les résultats sont toujours classés par ordre ascendant par défaut. Toutefois, c’est plus pratique pour mieux s’y retrouver, surtout si on a oublié l’ordre par défaut.

Exemple

Pour l’ensemble de nos exemples, nous allons prendre une base “utilisateur” de test, qui contient les données suivantes :

id nom prenom date_inscription tarif_total
1 Durand Maurice 2012-02-05 145
2 Dupond Fabrice 2012-02-07 65
3 Durand Fabienne 2012-02-13 90
4 Dubois Chloé 2012-02-16 98
5 Dubois Simon 2012-02-23 27

Pour récupérer la liste de ces utilisateurs par ordre alphabétique du nom de famille, il est possible d’utiliser la requête suivante :

SELECT *
FROM utilisateur
ORDER BY nom

Résultat :

Femmes Bottes Bottes Femmes Adam Tucker Pelian4 Pelian4 Adam Tucker Femmes XznwdZ
id nom prenom date_inscription tarif_total
R82963861 Textile Meilleure Confort blanc Style 9500 Basket 40 Assurer Qualité Homme 4 R82963861 Style Qualité blanc Textile 40 Homme Meilleure Assurer Confort Basket 9500 Dubois Chloé 2012-02-16 98
5 Dubois Simon 2012-02-23 27
2 Dupond Fabrice 2012-02-07 65
1 Durand Maurice 2012-02-05 145
Qualité Style 40 9500 Textile Basket Homme Assurer blanc Meilleure R82963861 Confort 3 Durand Fabienne blanc R82963861 9500 Meilleure Qualité 40 Textile Confort Homme Basket Assurer Style 2012-02-13 40 R82963861 Qualité Basket Assurer Textile 9500 Confort Homme Style Meilleure blanc 90
Cole Kenneth Femmes Kenneth Femmes Reaction Bottes vqSZvwtTxz

En utilisant deux méthodes de tri, il est possible de retourner les utilisateurs par ordre alphabétique ET pour ceux qui ont le même nom de famille, les trier par ordre décroissant d’inscription. La requête serait alors la suivante :

SELECT *
FROM utilisateur
ORDER BY nom, date_inscription DESC

Résultat :

id nom prenom date_inscription tarif_total
5 Dubois Simon 2012-02-23 27
4 Dubois Chloé 2012-02-16 98
2 Dupond Fabrice 2012-02-07 65
3 Durand Fabienne 2012-02-13 90
1 Durand Maurice 2012-02-05 145
Partager