- Chaque fois que nous souhaitons trier les enregistrements en fonction des colonnes stockées dans les tables de la base de données SQL, nous envisageons d'utiliser la clause ORDER BY dans SQL.
- La clause ORDER BY dans SQL nous aide à trier les enregistrements en fonction de la colonne spécifique d'une table. Cela signifie que dans un premier temps, toutes les valeurs stockées dans la colonne sur laquelle on applique la clause ORDER BY seront triées. Ensuite, les valeurs des colonnes correspondantes seront affichées dans le même ordre que les valeurs que nous avons obtenues à l'étape précédente.
- En utilisant la clause ORDER BY, nous pouvons trier les enregistrements par ordre croissant ou décroissant selon nos besoins. Les enregistrements seront triés par ordre croissant chaque fois que le mot-clé ASC est utilisé avec la clause ORDER by. Le mot-clé DESC triera les enregistrements par ordre décroissant . Si aucun mot-clé n'est spécifié après la colonne sur laquelle nous devons trier les enregistrements, alors, dans ce cas, le tri se fera par défaut dans l'ordre croissant.
Avant d'écrire les requêtes de tri des enregistrements, comprenons la syntaxe.
Syntaxe pour trier les enregistrements par ordre décroissant :
SELECT ColumnName1,…,ColumnNameN FROM TableName ORDER BY ColumnNameDESC;
Explorons davantage ce sujet à l'aide d'exemples. Nous utiliserons la base de données MySQL pour écrire les requêtes dans les exemples.
Considérons que nous avons une table clients avec les enregistrements suivants :
programme java
IDENTIFIANT | NOM | ÂGE | ADRESSE | SALAIRE |
---|---|---|---|---|
1 | Himani Gupta | vingt-et-un | Modi Nagar | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
3 | Ajeet Bhargav | Quatre cinq | Meerut | 65000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
5 | Balwan Singh | Quatre cinq | Bénarès | 36000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38000 |
8 | Neeru Sharma | 29 | Puné | 40000 |
9 | Akash Yadav | 32 | Bombay | 43500 |
dix | Sahil Cheikh | 35 | Aurangâbâd | 68800 |
Exemple 1:
Écrivez une requête pour trier les enregistrements dans l'ordre décroissant des noms de clients stockés dans la table clients.
Requête:
mysql> SELECT *FROM customers ORDER BY Name DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne « Nom » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
IDENTIFIANT | NOM | ÂGE | ADRESSE | SALAIRE |
---|---|---|---|---|
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
dix | Sahil Cheikh | 35 | Aurangâbâd | 68800 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
8 | Neeru Sharma | 29 | Puné | 40000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | vingt-et-un | Modi Nagar | 22000 |
5 | Balwan Singh | Quatre cinq | Bénarès | 36000 |
3 | Ajeet Bhargav | Quatre cinq | Meerut | 65000 |
9 | Akash Yadav | 32 | Bombay | 43500 |
Tous les enregistrements présents dans la table clients sont affichés par ordre décroissant du nom du client.
Exemple 2 :
Écrivez une requête pour trier les enregistrements dans l'ordre décroissant des adresses stockées dans la table clients.
Requête:
mysql> SELECT *FROM customers ORDER BY Address DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée à la colonne « Adresse » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
IDENTIFIANT | NOM | ÂGE | ADRESSE | SALAIRE |
---|---|---|---|---|
5 | Balwan Singh | Quatre cinq | Bénarès | 36000 |
8 | Neeru Sharma | 29 | Puné | 40000 |
9 | Akash Yadav | 32 | Bombay | 43500 |
1 | Himani Gupta | vingt-et-un | Modi Nagar | 22000 |
3 | Ajeet Bhargav | Quatre cinq | Meerut | 65000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
dix | Sahil Cheikh | 35 | Aurangâbâd | 68800 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38000 |
Tous les enregistrements présents dans la table clients sont affichés par ordre décroissant de l'adresse du client.
Exemple 3 :
Écrivez une requête pour trier les enregistrements par ordre décroissant du salaire du client stocké dans la table clients.
Requête:
mysql> SELECT *FROM customers ORDER BY Salary DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne « Salaire » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
IDENTIFIANT | Nom | Âge | Adresse | Salaire |
---|---|---|---|---|
dix | Sahil Cheikh | 35 | Aurangâbâd | 68800 |
3 | Ajeet Bhargav | Quatre cinq | Meerut | 65000 |
9 | Akash Yadav | 32 | Bombay | 43500 |
8 | Neeru Sharma | 29 | Puné | 40000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38000 |
5 | Balwan Singh | Quatre cinq | Bénarès | 36000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | vingt-et-un | Modi Nagar | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
Tous les enregistrements présents dans la table clients sont affichés par ordre décroissant du salaire du client.
Exemple 4 :
texte souligné en CSS
Écrivez une requête pour trier les enregistrements dans l'ordre décroissant de l'âge du client stocké dans la table clients.
Requête:
mysql> SELECT *FROM customers ORDER BY Age DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne 'Age' pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
IDENTIFIANT | Nom | Âge | Adresse | Salaire |
---|---|---|---|---|
3 | Ajeet Bhargav | Quatre cinq | Meerut | 65000 |
5 | Balwan Singh | Quatre cinq | Bénarès | 36000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
dix | Sahil Cheikh | 35 | Aurangâbâd | 68800 |
9 | Akash Yadav | 32 | Bombay | 43500 |
8 | Neeru Sharma | 29 | Puné | 40000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
1 | Himani Gupta | vingt-et-un | Modi Nagar | 22000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38000 |
Tous les enregistrements présents dans la table clients sont affichés par ordre décroissant d'âge du client.
Considérons que nous avons une autre table nommée agents avec les enregistrements suivants :
AIDE | Nom | Espace de travail | Profit_Pourcentage | Numéro de contact | Salaire |
---|---|---|---|---|---|
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25000 |
3 | Prachi Desai | Bombay | 2 | 9056123432 | 60000 |
4 | ShivaniPlus | Puné | 3 | 8894236789 | 35500 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
7 | Shweta a dit | Chandigarh | 6 | 8898786453 | 31670 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
9 | Anushka Tripathi | Sur tes doigts | 9 | 8909124326 | 38000 |
dix | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
Exemple 1:
Écrivez une requête pour trier les enregistrements dans l'ordre décroissant des noms d'agent stockés dans la table agents.
Requête:
mysql> SELECT *FROM agents ORDER BY Name DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne « Nom » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
différence entre un lion et un tigre
Vous obtiendrez le résultat suivant :
AIDE | Nom | Espace de travail | Profit_Pourcentage | Numéro de contact | Salaire |
---|---|---|---|---|---|
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
7 | Shweta a dit | Chandigarh | 6 | 8898786453 | 31670 |
4 | ShivaniPlus | Puné | 3 | 8894236789 | 35500 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
3 | Prachi Desai | Bombay | 2 | 9056123432 | 60000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
dix | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
9 | Anushka Tripathi | Sur tes doigts | 9 | 8909124326 | 38000 |
Tous les enregistrements présents dans la table des agents sont affichés par ordre décroissant du nom de l'agent.
Exemple 2 :
Écrivez une requête pour trier les enregistrements par ordre décroissant du salaire de l'agent stocké dans la table des agents.
Requête:
mysql> SELECT *FROM agents ORDER BY Salary DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne « Salaire » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
AIDE | Nom | Espace de travail | Profit_Pourcentage | Numéro de contact | Salaire |
---|---|---|---|---|---|
3 | Prachi Desai | Bombay | 2 | 9056123432 | 60000 |
dix | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
9 | Anushka Tripathi | Sur tes doigts | 9 | 8909124326 | 38000 |
4 | ShivaniPlus | Puné | 3 | 8894236789 | 35500 |
7 | Shweta a dit | Chandigarh | 6 | 8898786453 | 31670 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25000 |
Tous les enregistrements présents dans la table des agents sont affichés par ordre décroissant du salaire de l'agent.
Exemple 3 :
Écrivez une requête pour trier les enregistrements par ordre décroissant de la zone de travail de l'agent stockée dans la table des agents.
Requête:
mysql> SELECT *FROM agents ORDER BY WorkArea DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne 'WorkArea' pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
AIDE | Nom | Espace de travail | Profit_Pourcentage | Numéro de contact | Salaire |
---|---|---|---|---|---|
9 | Anushka Tripathi | Sur tes doigts | 9 | 8909124326 | 38000 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
4 | ShivaniPlus | Puné | 3 | 8894236789 | 35500 |
3 | Prachi Desai | Bombay | 2 | 9056123432 | 60000 |
dix | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25000 |
7 | Shweta a dit | Chandigarh | 6 | 8898786453 | 31670 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
Tous les enregistrements présents dans la table des agents sont affichés par ordre décroissant de l'espace de travail de l'agent.
Exemple 4 :
Écrivez une requête pour trier les enregistrements dans l'ordre décroissant du pourcentage de profit de l'agent stocké dans la table des agents.
chaîne de concaténation Java
Requête:
mysql> SELECT *FROM agents ORDER BY Profit_Percent DESC;
Ici, dans une requête SELECT, une clause ORDER BY est appliquée sur la colonne « Profit_Percent » pour trier les enregistrements. Le mot-clé DESC triera les enregistrements par ordre décroissant.
Vous obtiendrez le résultat suivant :
AIDE | Nom | Espace de travail | Profit_Pourcentage | Numéro de contact | Salaire |
---|---|---|---|---|---|
9 | Anushka Tripathi | Sur tes doigts | 9 | 8909124326 | 38000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
dix | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
7 | Shweta a dit | Chandigarh | 6 | 8898786453 | 31670 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
4 | ShivaniPlus | Puné | 3 | 8894236789 | 35500 |
3 | Prachi Desai | Bombay | 2 | 9056123432 | 60000 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
Tous les enregistrements présents dans la table des agents sont affichés par ordre décroissant du pourcentage de profit de l'agent.