3.3.4 Récupérer des informations à partir d'une table
3.3 Création et utilisation d'une base de données
3 Tutoriels d'introduction
Manuel de Référence MySQL 4.1 : Version Française
. Sélectionner toutes les données . Sélectionner des lignes particulières . Sélectionner des colonnes particulières ->Trier les enregistrements . Calcul sur les Dates . Travailler avec la valeur NULL . Recherche de modèles . Compter les lignes . Utiliser plus d'une table
|
3.3.4.4 Trier les enregistrements
Vous avez sûrement noté dans les exemples précédents que les lignes
de résultat sont affichées sans ordre particulier. Cependant, il est souvent
plus facile d'examiner les résultats lorsqu'ils sont triés d'une manière
significative.
Pour trier un résultat, vous devez utiliser une clause
ORDER BY
.
L'exemple suivant présente les dates d'anniversaire des animaux, triées par date :
mysql> SELECT nom, naissance FROM animaux ORDER BY naissance; +----------+------------+ | nom | naissance | +----------+------------+ | Buffy | 1989-05-13 | | Bowser | 1989-08-31 | | Fang | 1990-08-27 | | Fluffy | 1993-02-04 | | Claws | 1994-03-17 | | Slim | 1996-04-29 | | Whistler | 1997-12-09 | | Chirpy | 1998-09-11 | | Puffball | 1999-03-30 | +----------+------------+
|
Sur les noms de colonnes, le tri - comme toutes les opérations de comparaison -
est normalement exécuté sans tenir compte de la casse.
Cela signifie que l'ordre sera indéfini pour les colonnes qui sont identiques,
excepté leur casse. Vous pouvez forcer le tri sensible à la casse en utilisant
la clause BINARY :
ORDER BY BINARY(champ)
. Pour trier dans l'ordre inverse, ajoutez le mot-clé
DESC
(décroissant)
au nom de la colonne à trier :
mysql> SELECT nom, naissance FROM animaux ORDER BY naissance DESC; +----------+------------+ | nom | naissance | +----------+------------+ | Puffball | 1999-03-30 | | Chirpy | 1998-09-11 | | Whistler | 1997-12-09 | | Slim | 1996-04-29 | | Claws | 1994-03-17 | | Fluffy | 1993-02-04 | | Fang | 1990-08-27 | | Bowser | 1989-08-31 | | Buffy | 1989-05-13 | +----------+------------+
|
Vous pouvez effectuer un tri sur plusieurs colonnes. Par exemple, pour trier
par types d'animaux, puis par la date d'anniversaire des animaux, en plaçant les
plus jeunes en premier, utilisez la requête suivante :
mysql> SELECT nom, espece, naissance FROM animaux ORDER BY espece, naissance DESC; +----------+---------+------------+ | nom | espece | naissance | +----------+---------+------------+ | Chirpy | oiseau | 1998-09-11 | | Whistler | oiseau | 1997-12-09 | | Claws | chat | 1994-03-17 | | Fluffy | chat | 1993-02-04 | | Fang | chien | 1990-08-27 | | Bowser | chien | 1989-08-31 | | Buffy | chien | 1989-05-13 | | Puffball | hamster | 1999-03-30 | | Slim | serpent | 1996-04-29 | +----------+---------+------------+
|
Notez que le mot-clé
DESC
est appliqué uniquement au nom de la colonne qui
le précède (
naissance
) ; les valeurs
espece
continuent
à être triées dans l'ordre croissant.
|