Maison >base de données >tutoriel mysql >Comment trier plusieurs colonnes SQL avec différents ordres croissants et décroissants ?
Tri multi-colonnes SQL : utilisation flexible de l'ordre croissant et décroissant
Dans les opérations de base de données SQL, il est souvent nécessaire de trier plusieurs colonnes, non seulement pour l'organisation des données, mais surtout pour répondre à des exigences de tri spécifiques. Supposons qu'il existe un tableau contenant deux colonnes, « colonne1 » et « colonne2 », et qu'il soit nécessaire de trier la colonne « colonne1 » par ordre décroissant tout en conservant la colonne « colonne2 » par ordre croissant.
La clause ORDER BY
de SQL fournit une syntaxe concise pour implémenter différentes directions de tri pour plusieurs colonnes. Sa syntaxe est la suivante :
<code class="language-sql">ORDER BY column1 DESC, column2</code>
Dans cet exemple, le mot-clé DESC
spécifie la colonne « colonne1 » à trier par ordre décroissant, et la colonne « colonne2 » ne spécifie pas de sens de tri, elle est donc par défaut par ordre croissant (méthode de tri par défaut de SQL) .
Cette stratégie de tri donne la priorité à la colonne 'column1'. Chaque enregistrement avec une valeur « colonne1 » différente sera classé dans l'ordre spécifié. Pour les enregistrements ayant la même valeur « colonne1 », la requête sera ensuite triée selon l'ordre croissant de la colonne « colonne2 ».
Par exemple, considérons un tableau contenant les données suivantes :
column1 | column2 |
---|---|
10 | 5 |
30 | 20 |
20 | 15 |
20 | 10 |
L'exécution de la requête suivante sur cette table produira les résultats triés souhaités :
<code class="language-sql">SELECT * FROM table ORDER BY column1 DESC, column2</code>
Le résultat sera :
column1 | column2 |
---|---|
30 | 20 |
20 | 10 |
20 | 15 |
10 | 5 |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!