logo

SQL ORDER BY KLAVZULA S PADAJČIM VRSTNIM REDOM

  • Kadarkoli želimo razvrstiti zapise na podlagi stolpcev, shranjenih v tabelah baze podatkov SQL, razmislimo o uporabi klavzule ORDER BY v SQL.
  • Klavzula ORDER BY v SQL nam pomaga razvrstiti zapise glede na določen stolpec tabele. To pomeni, da bodo na začetku razvrščene vse vrednosti, shranjene v stolpcu, za katerega uporabljamo klavzulo ORDER BY. Nato bodo ustrezne vrednosti stolpcev prikazane v istem zaporedju kot vrednosti, ki smo jih pridobili v prejšnjem koraku.
  • Z uporabo klavzule ORDER BY lahko razvrstimo zapise v naraščajočem ali padajočem vrstnem redu glede na naše zahteve. Zapisi bodo razvrščeni v naraščajočem vrstnem redu, kadar koli je ključna beseda ASC uporabljena s klavzulo ORDER by. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu . Če za stolpcem, na podlagi katerega moramo razvrstiti zapise, ni podana ključna beseda, bo v tem primeru razvrščanje privzeto opravljeno v naraščajočem vrstnem redu.

Preden napišemo poizvedbe za razvrščanje zapisov, poglejmo sintakso.

Sintaksa za razvrščanje zapisov v padajočem vrstnem redu:

SELECT ColumnName1,…,ColumnNameN FROM TableName ORDER BY ColumnNameDESC; 

Raziščimo več o tej temi s pomočjo primerov. Za pisanje poizvedb v primerih bomo uporabili bazo MySQL.

Recimo, da imamo tabelo strank z naslednjimi zapisi:

ID IME STAROST NASLOV PLAČA
1 Himani Gupta enaindvajset Modi Nagar 22000
2 Shiva Tiwari 22 Bhopal 21000
3 Ajeet Bhargav Štiri Meerut 65000
4 Ritesh Yadav 36 Azamgarh 26000
5 Balwant Singh Štiri Varanasi 36000
6 Mahesh Sharma 26 Mathura 22000
7 Rohit Srivastava 19 Ahmedabad 38000
8 Neeru Sharma 29 Pune 40000
9 Akash Yadav 32 Mumbaj 43500
10 Sahil Šejk 35 Aurangabad 68800

Primer 1:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu imen strank, shranjenih v tabeli strank.

poizvedba:

mysql> SELECT *FROM customers ORDER BY Name DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu »Ime« za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

ID IME STAROST NASLOV PLAČA
2 Shiva Tiwari 22 Bhopal 21000
10 Sahil Šejk 35 Aurangabad 68800
7 Rohit Srivastava 19 Ahmedabad 38000
4 Ritesh Yadav 36 Azamgarh 26000
8 Neeru Sharma 29 Pune 40000
6 Mahesh Sharma 26 Mathura 22000
1 Himani Gupta enaindvajset Modi Nagar 22000
5 Balwant Singh Štiri Varanasi 36000
3 Ajeet Bhargav Štiri Meerut 65000
9 Akash Yadav 32 Mumbaj 43500

Vsi zapisi v tabeli strank so prikazani v padajočem vrstnem redu imena stranke.

Primer 2:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu naslovov, shranjenih v tabeli strank.

poizvedba:

mysql> SELECT *FROM customers ORDER BY Address DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena za stolpec 'Address' za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

ID IME STAROST NASLOV PLAČA
5 Balwant Singh Štiri Varanasi 36000
8 Neeru Sharma 29 Pune 40000
9 Akash Yadav 32 Mumbaj 43500
1 Himani Gupta enaindvajset Modi Nagar 22000
3 Ajeet Bhargav Štiri Meerut 65000
6 Mahesh Sharma 26 Mathura 22000
2 Shiva Tiwari 22 Bhopal 21000
4 Ritesh Yadav 36 Azamgarh 26000
10 Sahil Šejk 35 Aurangabad 68800
7 Rohit Srivastava 19 Ahmedabad 38000

Vsi zapisi v tabeli strank so prikazani v padajočem vrstnem redu glede na naslov stranke.

Primer 3:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu plače strank, shranjenih v tabeli strank.

poizvedba:

mysql> SELECT *FROM customers ORDER BY Salary DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu »Plača« za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

ID Ime Starost Naslov Plača
10 Sahil Šejk 35 Aurangabad 68800
3 Ajeet Bhargav Štiri Meerut 65000
9 Akash Yadav 32 Mumbaj 43500
8 Neeru Sharma 29 Pune 40000
7 Rohit Srivastava 19 Ahmedabad 38000
5 Balwant Singh Štiri Varanasi 36000
4 Ritesh Yadav 36 Azamgarh 26000
6 Mahesh Sharma 26 Mathura 22000
1 Himani Gupta enaindvajset Modi Nagar 22000
2 Shiva Tiwari 22 Bhopal 21000

Vsi zapisi v tabeli strank so prikazani v padajočem vrstnem redu glede na plačo stranke.

Primer 4:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu glede na starost stranke, shranjenih v tabeli strank.

poizvedba:

mysql> SELECT *FROM customers ORDER BY Age DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu 'Starost' za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

ID Ime Starost Naslov Plača
3 Ajeet Bhargav Štiri Meerut 65000
5 Balwant Singh Štiri Varanasi 36000
4 Ritesh Yadav 36 Azamgarh 26000
10 Sahil Šejk 35 Aurangabad 68800
9 Akash Yadav 32 Mumbaj 43500
8 Neeru Sharma 29 Pune 40000
6 Mahesh Sharma 26 Mathura 22000
2 Shiva Tiwari 22 Bhopal 21000
1 Himani Gupta enaindvajset Modi Nagar 22000
7 Rohit Srivastava 19 Ahmedabad 38000

Vsi zapisi v tabeli strank so prikazani v padajočem vrstnem redu glede na starost stranke.

Recimo, da imamo drugo tabelo z imenom agenti z naslednjimi zapisi:

POMOČ Ime WorkArea Profit_Percent Kontaktna številka Plača
1 Gurpreet Singh Bangalore 1 9989675432 43000
2 Sakshi Kumari Chennai 5 8190567342 25000
3 Prachi Desai Mumbaj 2 9056123432 60000
4 Shivani More Pune 3 8894236789 35500
5 Pallavi Singh Delhi 4 7798092341 38700
6 Rohini Kulkarni Ambala 8 7890945612 25670
7 je rekel Shweta Chandigarh 6 8898786453 31670
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
9 Anuška Tripathi Na prste 9 8909124326 38000
10 Devika Sharma Goa 7 7864523145 44050

Primer 1:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu imen agentov, shranjenih v tabeli agentov.

poizvedba:

mysql> SELECT *FROM agents ORDER BY Name DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu »Ime« za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

POMOČ Ime WorkArea Profit_Percent Kontaktna številka Plača
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
7 je rekel Shweta Chandigarh 6 8898786453 31670
4 Shivani More Pune 3 8894236789 35500
2 Sakshi Kumari Chennai 5 8190567342 25000
6 Rohini Kulkarni Ambala 8 7890945612 25670
3 Prachi Desai Mumbaj 2 9056123432 60000
5 Pallavi Singh Delhi 4 7798092341 38700
1 Gurpreet Singh Bangalore 1 9989675432 43000
10 Devika Sharma Goa 7 7864523145 44050
9 Anuška Tripathi Na prste 9 8909124326 38000

Vsi zapisi v tabeli agentov so prikazani v padajočem vrstnem redu imena agenta.

Primer 2:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu plače agenta, shranjenih v tabeli agentov.

poizvedba:

mysql> SELECT *FROM agents ORDER BY Salary DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu »Plača« za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

java int za podvojitev

Dobili boste naslednje rezultate:

POMOČ Ime WorkArea Profit_Percent Kontaktna številka Plača
3 Prachi Desai Mumbaj 2 9056123432 60000
10 Devika Sharma Goa 7 7864523145 44050
1 Gurpreet Singh Bangalore 1 9989675432 43000
5 Pallavi Singh Delhi 4 7798092341 38700
9 Anuška Tripathi Na prste 9 8909124326 38000
4 Shivani More Pune 3 8894236789 35500
7 je rekel 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 25000

Vsi zapisi v tabeli agentov so prikazani v padajočem vrstnem redu glede na plačo agenta.

Primer 3:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu agentovega delovnega področja, shranjenega v tabeli agentov.

poizvedba:

mysql> SELECT *FROM agents ORDER BY WorkArea DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu 'WorkArea' za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

POMOČ Ime WorkArea Profit_Percent Kontaktna številka Plača
9 Anuška Tripathi Na prste 9 8909124326 38000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
4 Shivani More Pune 3 8894236789 35500
3 Prachi Desai Mumbaj 2 9056123432 60000
10 Devika Sharma Goa 7 7864523145 44050
5 Pallavi Singh Delhi 4 7798092341 38700
2 Sakshi Kumari Chennai 5 8190567342 25000
7 je rekel Shweta Chandigarh 6 8898786453 31670
1 Gurpreet Singh Bangalore 1 9989675432 43000
6 Rohini Kulkarni Ambala 8 7890945612 25670

Vsi zapisi v tabeli agentov so prikazani v padajočem vrstnem redu delovnega področja agenta.

Primer 4:

Napišite poizvedbo za razvrščanje zapisov v padajočem vrstnem redu glede na odstotek dobička agenta, shranjenega v tabeli agentov.

poizvedba:

mysql> SELECT *FROM agents ORDER BY Profit_Percent DESC;

Tukaj v poizvedbi SELECT je klavzula ORDER BY uporabljena v stolpcu 'Profit_Percent' za razvrščanje zapisov. Ključna beseda DESC bo razvrstila zapise v padajočem vrstnem redu.

Dobili boste naslednje rezultate:

POMOČ Ime WorkArea Profit_Percent Kontaktna številka Plača
9 Anuška Tripathi Na prste 9 8909124326 38000
6 Rohini Kulkarni Ambala 8 7890945612 25670
10 Devika Sharma Goa 7 7864523145 44050
7 je rekel Shweta Chandigarh 6 8898786453 31670
2 Sakshi Kumari Chennai 5 8190567342 25000
5 Pallavi Singh Delhi 4 7798092341 38700
4 Shivani More Pune 3 8894236789 35500
3 Prachi Desai Mumbaj 2 9056123432 60000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
1 Gurpreet Singh Bangalore 1 9989675432 43000

Vsi zapisi v tabeli agentov so prikazani v padajočem vrstnem redu glede na odstotek dobička agenta.