- Når vi ønsker at sortere posterne baseret på kolonnerne gemt i tabellerne i SQL-databasen, så overvejer vi at bruge ORDER BY-sætningen i SQL.
- ORDER BY-udtrykket i SQL hjælper os med at sortere posterne baseret på den specifikke kolonne i en tabel. Det betyder, at til at begynde med vil alle de værdier, der er gemt i kolonnen, som vi anvender ORDER BY-klausulen på, blive sorteret. Så vil de tilsvarende kolonneværdier blive vist i samme rækkefølge som værdierne, vi har opnået i det tidligere trin.
- Ved at bruge ORDER BY-klausulen kan vi sortere posterne i stigende eller faldende rækkefølge i henhold til vores krav. Posterne vil blive sorteret i stigende rækkefølge, hver gang ASC nøgleordet bruges sammen med ORDER by klausulen. DESC nøgleord vil sortere posterne i faldende rækkefølge . Hvis der ikke er angivet et nøgleord efter den kolonne, som vi skal sortere posterne ud fra, så vil sorteringen i så fald blive udført som standard i stigende rækkefølge.
Før du skriver forespørgslerne til sortering af posterne, lad os forstå syntaksen.
Syntaks for at sortere posterne i faldende rækkefølge:
SELECT ColumnName1,…,ColumnNameN FROM TableName ORDER BY ColumnNameDESC;
Lad os udforske mere om dette emne ved hjælp af eksempler. Vi vil bruge MySQL-databasen til at skrive forespørgslerne i eksempler.
Overvej, at vi har en kundetabel med følgende poster:
forårets rammer
ID | NAVN | ALDER | ADRESSE | LØN |
---|---|---|---|---|
1 | Himani Gupta | enogtyve | Modi Nagar | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
3 | Ajeet Bhargav | Fire. Fem | Meerut | 65.000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
5 | Balwant Singh | Fire. Fem | Varanasi | 36.000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38.000 |
8 | Neeru Sharma | 29 | Pune | 40.000 |
9 | Akash Yadav | 32 | Mumbai | 43500 |
10 | Sahil Sheikh | 35 | Aurangabad | 68800 |
Eksempel 1:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af de kundenavne, der er gemt i kundetabellen.
Forespørgsel:
mysql> SELECT *FROM customers ORDER BY Name DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Name' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
ID | NAVN | ALDER | ADRESSE | LØN |
---|---|---|---|---|
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
10 | Sahil Sheikh | 35 | Aurangabad | 68800 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38.000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
8 | Neeru Sharma | 29 | Pune | 40.000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | enogtyve | Modi Nagar | 22000 |
5 | Balwant Singh | Fire. Fem | Varanasi | 36.000 |
3 | Ajeet Bhargav | Fire. Fem | Meerut | 65.000 |
9 | Akash Yadav | 32 | Mumbai | 43500 |
Alle poster, der findes i kundetabellen, vises i faldende rækkefølge efter kundens navn.
Eksempel 2:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af de adresser, der er gemt i kundetabellen.
Forespørgsel:
mysql> SELECT *FROM customers ORDER BY Address DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul til kolonnen 'Adresse' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
ID | NAVN | ALDER | ADRESSE | LØN |
---|---|---|---|---|
5 | Balwant Singh | Fire. Fem | Varanasi | 36.000 |
8 | Neeru Sharma | 29 | Pune | 40.000 |
9 | Akash Yadav | 32 | Mumbai | 43500 |
1 | Himani Gupta | enogtyve | Modi Nagar | 22000 |
3 | Ajeet Bhargav | Fire. Fem | Meerut | 65.000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
10 | Sahil Sheikh | 35 | Aurangabad | 68800 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38.000 |
Alle poster, der findes i kundetabellen, vises i faldende rækkefølge efter kundens adresse.
Eksempel 3:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af kundelønnen gemt i kundetabellen.
Forespørgsel:
mysql> SELECT *FROM customers ORDER BY Salary DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Løn' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
ID | Navn | Alder | Adresse | Løn |
---|---|---|---|---|
10 | Sahil Sheikh | 35 | Aurangabad | 68800 |
3 | Ajeet Bhargav | Fire. Fem | Meerut | 65.000 |
9 | Akash Yadav | 32 | Mumbai | 43500 |
8 | Neeru Sharma | 29 | Pune | 40.000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38.000 |
5 | Balwant Singh | Fire. Fem | Varanasi | 36.000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
1 | Himani Gupta | enogtyve | Modi Nagar | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
Alle poster i kundetabellen vises i faldende rækkefølge efter kundens løn.
Eksempel 4:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge efter kundens alder gemt i kundetabellen.
Forespørgsel:
mysql> SELECT *FROM customers ORDER BY Age DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Alder' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
ID | Navn | Alder | Adresse | Løn |
---|---|---|---|---|
3 | Ajeet Bhargav | Fire. Fem | Meerut | 65.000 |
5 | Balwant Singh | Fire. Fem | Varanasi | 36000 |
4 | Ritesh Yadav | 36 | Azamgarh | 26000 |
10 | Sahil Sheikh | 35 | Aurangabad | 68800 |
9 | Akash Yadav | 32 | Mumbai | 43500 |
8 | Neeru Sharma | 29 | Pune | 40.000 |
6 | Mahesh Sharma | 26 | Mathura | 22000 |
2 | Shiva Tiwari | 22 | Bhopal | 21000 |
1 | Himani Gupta | enogtyve | Modi Nagar | 22000 |
7 | Rohit Srivastava | 19 | Ahmedabad | 38.000 |
Alle poster, der findes i kundetabellen, vises i faldende rækkefølge efter kundens alder.
Overvej, at vi har en anden tabel ved navn agenter med følgende poster:
HJÆLPE | Navn | Arbejdsområde | Profit_Procent | Kontakt nummer | Løn |
---|---|---|---|---|---|
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25.000 |
3 | Prachi Desai | Mumbai | 2 | 9056123432 | 60.000 |
4 | Shivani mere | Pune | 3 | 8894236789 | 35500 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
7 | sagde Shweta | Chandigarh | 6 | 8898786453 | 31670 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
9 | Anushka Tripathi | På dine fingre | 9 | 8909124326 | 38.000 |
10 | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
Eksempel 1:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af agentnavnene, der er gemt i agenttabellen.
Forespørgsel:
mysql> SELECT *FROM agents ORDER BY Name DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Name' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
HJÆLPE | Navn | Arbejdsområde | Profit_Procent | Kontakt nummer | Løn |
---|---|---|---|---|---|
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
7 | sagde Shweta | Chandigarh | 6 | 8898786453 | 31670 |
4 | Shivani mere | Pune | 3 | 8894236789 | 35500 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25.000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
3 | Prachi Desai | Mumbai | 2 | 9056123432 | 60.000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
10 | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
9 | Anushka Tripathi | På dine fingre | 9 | 8909124326 | 38.000 |
Alle poster, der findes i agenttabellen, vises i faldende rækkefølge efter agentens navn.
Eksempel 2:
indstilling af python-sti
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af agentlønnen gemt i agenttabellen.
Forespørgsel:
mysql> SELECT *FROM agents ORDER BY Salary DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Løn' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
HJÆLPE | Navn | Arbejdsområde | Profit_Procent | Kontakt nummer | Løn |
---|---|---|---|---|---|
3 | Prachi Desai | Mumbai | 2 | 9056123432 | 60.000 |
10 | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
9 | Anushka Tripathi | På dine fingre | 9 | 8909124326 | 38.000 |
4 | Shivani mere | Pune | 3 | 8894236789 | 35500 |
7 | sagde Shweta | Chandigarh | 6 | 8898786453 | 31670 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25.000 |
Alle poster i agenttabellen vises i faldende rækkefølge af agentens løn.
Eksempel 3:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge af agentens arbejdsområde gemt i agenttabellen.
Forespørgsel:
mysql> SELECT *FROM agents ORDER BY WorkArea DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'WorkArea' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
HJÆLPE | Navn | Arbejdsområde | Profit_Procent | Kontakt nummer | Løn |
---|---|---|---|---|---|
9 | Anushka Tripathi | På dine fingre | 9 | 8909124326 | 38.000 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
4 | Shivani mere | Pune | 3 | 8894236789 | 35500 |
3 | Prachi Desai | Mumbai | 2 | 9056123432 | 60.000 |
10 | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25.000 |
7 | sagde Shweta | Chandigarh | 6 | 8898786453 | 31670 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
Alle poster, der findes i agenttabellen, vises i faldende rækkefølge af agentens arbejdsområde.
Eksempel 4:
Skriv en forespørgsel for at sortere posterne i faldende rækkefølge efter agentens overskudsprocent, der er gemt i agenttabellen.
Forespørgsel:
mysql> SELECT *FROM agents ORDER BY Profit_Percent DESC;
Her i en SELECT-forespørgsel anvendes en ORDER BY-klausul på kolonnen 'Profit_Percent' for at sortere posterne. DESC nøgleord vil sortere posterne i faldende rækkefølge.
Du får følgende output:
HJÆLPE | Navn | Arbejdsområde | Profit_Procent | Kontakt nummer | Løn |
---|---|---|---|---|---|
9 | Anushka Tripathi | På dine fingre | 9 | 8909124326 | 38.000 |
6 | Rohini Kulkarni | Ambala | 8 | 7890945612 | 25670 |
10 | Devika Sharma | Goa | 7 | 7864523145 | 44050 |
7 | sagde Shweta | Chandigarh | 6 | 8898786453 | 31670 |
2 | Sakshi Kumari | Chennai | 5 | 8190567342 | 25.000 |
5 | Pallavi Singh | Delhi | 4 | 7798092341 | 38700 |
4 | Shivani mere | Pune | 3 | 8894236789 | 35500 |
3 | Prachi Desai | Mumbai | 2 | 9056123432 | 60.000 |
8 | Sonakshi Tiwari | Udaipur | 2 | 9809453421 | 25050 |
1 | Gurpreet Singh | Bangalore | 1 | 9989675432 | 43000 |
Alle poster, der er til stede i agenttabellen, vises i faldende rækkefølge efter agentens overskudsprocent.