logo

SQL ORDER PODLE klauzule SE SESTUPNÝM POŘADÍM

  • Kdykoli chceme seřadit záznamy podle sloupců uložených v tabulkách SQL databáze, pak zvažujeme použití klauzule ORDER BY v SQL.
  • Klauzule ORDER BY v SQL nám pomáhá třídit záznamy na základě konkrétního sloupce tabulky. To znamená, že zpočátku budou seřazeny všechny hodnoty uložené ve sloupci, na který aplikujeme klauzuli ORDER BY. Poté se odpovídající hodnoty sloupců zobrazí ve stejném pořadí, ve kterém jsou hodnoty, které jsme získali v předchozím kroku.
  • Pomocí klauzule ORDER BY můžeme záznamy seřadit vzestupně nebo sestupně podle našich požadavků. Záznamy budou seřazeny ve vzestupném pořadí, kdykoli se použije klíčové slovo ASC s klauzulí ORDER by. Klíčové slovo DESC seřadí záznamy v sestupném pořadí . Pokud za sloupcem není zadáno žádné klíčové slovo, podle kterého máme záznamy řadit, pak se v takovém případě řazení provede standardně vzestupně.

Před napsáním dotazů na třídění záznamů se seznamme se syntaxí.

Syntaxe pro řazení záznamů v sestupném pořadí:

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

Podívejme se na toto téma více pomocí příkladů. Pro psaní dotazů v příkladech použijeme databázi MySQL.

Uvažujme, že máme tabulku zákazníků s následujícími záznamy:

ID NÁZEV STÁŘÍ ADRESA PLAT
1 Himani Gupta dvacet jedna Modi Nagar 22 000
2 Šiva Tiwari 22 Bhópál 21 000
3 Ajeet Bhargav Čtyři pět Meerut 65 000
4 Ritesh Yadav 36 Azamgarh 26 000
5 Balwant Singh Čtyři pět Váránasí 36 000
6 Mahesh Sharma 26 Mathura 22 000
7 Rohit Srivastava 19 Ahmedabad 38 000
8 Neeru Sharma 29 Pune 40 000
9 Akash Yadav 32 Bombaj 43500
10 Sahil Sheikh 35 Aurangabad 68800

Příklad 1:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle jmen zákazníků uložených v tabulce Zákazníci.

Dotaz:

mysql> SELECT *FROM customers ORDER BY Name DESC;

Zde v dotazu SELECT se na sloupec 'Název' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

ID NÁZEV STÁŘÍ ADRESA PLAT
2 Šiva Tiwari 22 Bhópál 21 000
10 Sahil Sheikh 35 Aurangabad 68800
7 Rohit Srivastava 19 Ahmedabad 38 000
4 Ritesh Yadav 36 Azamgarh 26 000
8 Neeru Sharma 29 Pune 40 000
6 Mahesh Sharma 26 Mathura 22 000
1 Himani Gupta dvacet jedna Modi Nagar 22 000
5 Balwant Singh Čtyři pět Váránasí 36 000
3 Ajeet Bhargav Čtyři pět Meerut 65 000
9 Akash Yadav 32 Bombaj 43500

Všechny záznamy v tabulce zákazníků jsou zobrazeny v sestupném pořadí podle jména zákazníka.

Příklad 2:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle adres uložených v tabulce zákazníků.

Dotaz:

mysql> SELECT *FROM customers ORDER BY Address DESC;

Zde v dotazu SELECT se na sloupec 'Adresa' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

ID NÁZEV STÁŘÍ ADRESA PLAT
5 Balwant Singh Čtyři pět Váránasí 36 000
8 Neeru Sharma 29 Pune 40 000
9 Akash Yadav 32 Bombaj 43500
1 Himani Gupta dvacet jedna Modi Nagar 22 000
3 Ajeet Bhargav Čtyři pět Meerut 65 000
6 Mahesh Sharma 26 Mathura 22 000
2 Šiva Tiwari 22 Bhópál 21 000
4 Ritesh Yadav 36 Azamgarh 26 000
10 Sahil Sheikh 35 Aurangabad 68800
7 Rohit Srivastava 19 Ahmedabad 38 000

Všechny záznamy v tabulce zákazníků jsou zobrazeny v sestupném pořadí podle adresy zákazníka.

javascriptový víceřádkový řetězec

Příklad 3:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle platu zákazníka uloženého v tabulce zákazníků.

Dotaz:

čtvrtletí v podnikání
mysql> SELECT *FROM customers ORDER BY Salary DESC;

Zde v dotazu SELECT se na sloupec 'Plat' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

ID název Stáří Adresa Plat
10 Sahil Sheikh 35 Aurangabad 68800
3 Ajeet Bhargav Čtyři pět Meerut 65 000
9 Akash Yadav 32 Bombaj 43500
8 Neeru Sharma 29 Pune 40 000
7 Rohit Srivastava 19 Ahmedabad 38 000
5 Balwant Singh Čtyři pět Váránasí 36 000
4 Ritesh Yadav 36 Azamgarh 26 000
6 Mahesh Sharma 26 Mathura 22 000
1 Himani Gupta dvacet jedna Modi Nagar 22 000
2 Šiva Tiwari 22 Bhópál 21 000

Všechny záznamy v tabulce zákazníků jsou zobrazeny v sestupném pořadí podle platu zákazníka.

Příklad 4:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle věku zákazníka uloženého v tabulce zákazníků.

Dotaz:

mysql> SELECT *FROM customers ORDER BY Age DESC;

Zde v dotazu SELECT se na sloupec 'Věk' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

ID název Stáří Adresa Plat
3 Ajeet Bhargav Čtyři pět Meerut 65 000
5 Balwant Singh Čtyři pět Váránasí 36 000
4 Ritesh Yadav 36 Azamgarh 26 000
10 Sahil Sheikh 35 Aurangabad 68800
9 Akash Yadav 32 Bombaj 43500
8 Neeru Sharma 29 Pune 40 000
6 Mahesh Sharma 26 Mathura 22 000
2 Šiva Tiwari 22 Bhópál 21 000
1 Himani Gupta dvacet jedna Modi Nagar 22 000
7 Rohit Srivastava 19 Ahmedabad 38 000

Všechny záznamy v tabulce zákazníků jsou zobrazeny v sestupném pořadí podle věku zákazníka.

Uvažujme, že máme další tabulku s názvem agenti s následujícími záznamy:

POMOC název Pracovní oblast Procent_profitu Kontaktní číslo Plat
1 Gurpreet Singh Bangalore 1 9989675432 43 000
2 Sakshi Kumari Chennai 5 8190567342 25 000
3 Prachi Desai Bombaj 2 9056123432 60 000
4 Shivani Více Pune 3 8894236789 35 500
5 Pallavi Singh Dillí 4 7798092341 38700
6 Rohini Kulkarni Ambala 8 7890945612 25670
7 řekla Shweta Čandígarh 6 8898786453 31670
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
9 Anushka Tripathi Na prstech 9 8909124326 38 000
10 Devika Sharma Goa 7 7864523145 44050

Příklad 1:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle jmen agentů uložených v tabulce agentů.

Dotaz:

mysql> SELECT *FROM agents ORDER BY Name DESC;

Zde v dotazu SELECT se na sloupec 'Název' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

POMOC název Pracovní oblast Procent_profitu Kontaktní číslo Plat
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
7 řekla Shweta Čandígarh 6 8898786453 31670
4 Shivani Více Pune 3 8894236789 35 500
2 Sakshi Kumari Chennai 5 8190567342 25 000
6 Rohini Kulkarni Ambala 8 7890945612 25670
3 Prachi Desai Bombaj 2 9056123432 60 000
5 Pallavi Singh Dillí 4 7798092341 38700
1 Gurpreet Singh Bangalore 1 9989675432 43 000
10 Devika Sharma Goa 7 7864523145 44050
9 Anushka Tripathi Na prstech 9 8909124326 38 000

Všechny záznamy v tabulce agentů jsou zobrazeny v sestupném pořadí podle jména agenta.

Příklad 2:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle platu agenta uloženého v tabulce agentů.

Dotaz:

mysql> SELECT *FROM agents ORDER BY Salary DESC;

Zde v dotazu SELECT se na sloupec 'Plat' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

POMOC název Pracovní oblast Procent_profitu Kontaktní číslo Plat
3 Prachi Desai Bombaj 2 9056123432 60 000
10 Devika Sharma Goa 7 7864523145 44050
1 Gurpreet Singh Bangalore 1 9989675432 43 000
5 Pallavi Singh Dillí 4 7798092341 38700
9 Anushka Tripathi Na prstech 9 8909124326 38 000
4 Shivani Více Pune 3 8894236789 35 500
7 řekla Shweta Čandígarh 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

Všechny záznamy v tabulce agentů jsou zobrazeny v sestupném pořadí podle platu agenta.

python převádí bajty na řetězec

Příklad 3:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle pracovní oblasti agenta uložené v tabulce agentů.

Dotaz:

mysql> SELECT *FROM agents ORDER BY WorkArea DESC;

Zde v dotazu SELECT se na sloupec 'WorkArea' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

POMOC název Pracovní oblast Procent_profitu Kontaktní číslo Plat
9 Anushka Tripathi Na prstech 9 8909124326 38 000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
4 Shivani Více Pune 3 8894236789 35500
3 Prachi Desai Bombaj 2 9056123432 60 000
10 Devika Sharma Goa 7 7864523145 44050
5 Pallavi Singh Dillí 4 7798092341 38700
2 Sakshi Kumari Chennai 5 8190567342 25 000
7 řekla Shweta Čandígarh 6 8898786453 31670
1 Gurpreet Singh Bangalore 1 9989675432 43 000
6 Rohini Kulkarni Ambala 8 7890945612 25670

Všechny záznamy v tabulce agentů jsou zobrazeny v sestupném pořadí podle pracovní oblasti agenta.

Příklad 4:

Napište dotaz pro seřazení záznamů v sestupném pořadí podle procenta zisku agenta uloženého v tabulce agentů.

Dotaz:

mysql> SELECT *FROM agents ORDER BY Profit_Percent DESC;

Zde v dotazu SELECT se na sloupec 'Profit_Percent' použije klauzule ORDER BY, aby se záznamy seřadily. Klíčové slovo DESC seřadí záznamy v sestupném pořadí.

Získáte následující výstup:

POMOC název Pracovní oblast Procent_profitu Kontaktní číslo Plat
9 Anushka Tripathi Na prstech 9 8909124326 38 000
6 Rohini Kulkarni Ambala 8 7890945612 25670
10 Devika Sharma Goa 7 7864523145 44050
7 řekla Shweta Čandígarh 6 8898786453 31670
2 Sakshi Kumari Chennai 5 8190567342 25 000
5 Pallavi Singh Dillí 4 7798092341 38700
4 Shivani Více Pune 3 8894236789 35 500
3 Prachi Desai Bombaj 2 9056123432 60 000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
1 Gurpreet Singh Bangalore 1 9989675432 43 000

Všechny záznamy v tabulce agentů jsou zobrazeny v sestupném pořadí podle procenta zisku agenta.