logo

SQL KĀRTĪBA PĒC KLAUZAS AR DILSTĪGU KĀRTĪBU

  • Ikreiz, kad vēlamies kārtot ierakstus, pamatojoties uz SQL datu bāzes tabulās saglabātajām kolonnām, mēs apsveram SQL klauzulas ORDER BY izmantošanu.
  • ORDER BY klauzula SQL palīdz mums kārtot ierakstus, pamatojoties uz konkrēto tabulas kolonnu. Tas nozīmē, ka sākotnēji tiks sakārtotas visas vērtības, kas saglabātas kolonnā, kurai mēs izmantojam klauzulu ORDER BY. Pēc tam atbilstošās kolonnas vērtības tiks parādītas tādā pašā secībā, kādā vērtības, ko esam ieguvuši iepriekšējā darbībā.
  • Izmantojot klauzulu ORDER BY, mēs varam kārtot ierakstus augošā vai dilstošā secībā atbilstoši mūsu prasībām. Ieraksti tiks kārtoti augošā secībā ikreiz, kad tiek izmantots ASC atslēgvārds ar ORDER ar klauzulu. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā . Ja aiz kolonnas, pēc kuras mums ir jākārto ieraksti, nav norādīts neviens atslēgvārds, tādā gadījumā kārtošana pēc noklusējuma tiks veikta augošā secībā.

Pirms ierakstu kārtošanas vaicājumu rakstīšanas ļaujiet mums saprast sintaksi.

unix izveidot direktoriju

Sintakse, lai kārtotu ierakstus dilstošā secībā:

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

Ļaujiet mums izpētīt vairāk par šo tēmu, izmantojot piemērus. Vaicājumu rakstīšanai piemēros izmantosim MySQL datu bāzi.

Apsveriet, ka mums ir klientu tabula ar šādiem ierakstiem:

ID VĀRDS VECUMS ADRESE ALGA
1 Himani Gupta divdesmitviens Modijs Nagars 22000
2 Šiva Tivari 22 Bopala 21 000
3 Adžets Bhargavs Četri Meerut 65 000
4 Ritešs Jadavs 36 Azamgarh 26 000
5 Balvants Sings Četri Varanasi 36 000
6 Mahešs Šarma 26 Mathura 22000
7 Rohits Šrivastava 19 Ahmedabada 38 000
8 Neeru Šarma 29 Pune 40 000
9 Akašs Jadavs 32 Mumbaja 43500
10 Sahils Šeihs 35 Aurangabad 68800

1. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā secībā pēc klientu tabulā saglabātajiem klientu vārdiem.

Vaicājums:

mysql> SELECT *FROM customers ORDER BY Name DESC;

Šeit SELECT vaicājumā kolonnai “Nosaukums” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

ID VĀRDS VECUMS ADRESE ALGA
2 Šiva Tivari 22 Bopala 21 000
10 Sahils Šeihs 35 Aurangabad 68800
7 Rohits Šrivastava 19 Ahmedabada 38 000
4 Ritešs Jadavs 36 Azamgarh 26 000
8 Neeru Šarma 29 Pune 40 000
6 Mahešs Šarma 26 Mathura 22000
1 Himani Gupta divdesmitviens Modijs Nagars 22000
5 Balvants Sings Četri Varanasi 36 000
3 Adžets Bhargavs Četri Meerut 65 000
9 Akašs Jadavs 32 Mumbaja 43500

Visi klientu tabulā esošie ieraksti tiek parādīti dilstošā secībā pēc klienta vārda.

2. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā secībā pēc klientu tabulā saglabātajām adresēm.

Vaicājums:

mysql> SELECT *FROM customers ORDER BY Address DESC;

Šeit SELECT vaicājumā kolonnai Adrese tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

ID VĀRDS VECUMS ADRESE ALGA
5 Balvants Sings Četri Varanasi 36 000
8 Neeru Šarma 29 Pune 40 000
9 Akašs Jadavs 32 Mumbaja 43500
1 Himani Gupta divdesmitviens Modijs Nagars 22000
3 Adžets Bhargavs Četri Meerut 65 000
6 Mahešs Šarma 26 Mathura 22000
2 Šiva Tivari 22 Bopala 21 000
4 Ritešs Jadavs 36 Azamgarh 26 000
10 Sahils Šeihs 35 Aurangabad 68800
7 Rohits Šrivastava 19 Ahmedabada 38 000

Visi klientu tabulā esošie ieraksti tiek parādīti dilstošā secībā pēc klienta adreses.

3. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā secībā pēc klientu tabulā saglabātās klientu algas.

Vaicājums:

mysql> SELECT *FROM customers ORDER BY Salary DESC;

Šeit SELECT vaicājumā kolonnai “Alga” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

ID Vārds Vecums Adrese Alga
10 Sahils Šeihs 35 Aurangabad 68800
3 Adžets Bhargavs Četri Meerut 65 000
9 Akašs Jadavs 32 Mumbaja 43500
8 Neeru Šarma 29 Pune 40 000
7 Rohits Šrivastava 19 Ahmedabada 38 000
5 Balvants Sings Četri Varanasi 36 000
4 Ritešs Jadavs 36 Azamgarh 26 000
6 Mahešs Šarma 26 Mathura 22000
1 Himani Gupta divdesmitviens Modijs Nagars 22000
2 Šiva Tivari 22 Bopala 21 000

Visi klientu tabulā esošie ieraksti tiek parādīti dilstošā klienta algas secībā.

4. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā klientu tabulā saglabātā klienta vecuma secībā.

Vaicājums:

mysql> SELECT *FROM customers ORDER BY Age DESC;

Šeit SELECT vaicājumā slejā “Vecums” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

ID Vārds Vecums Adrese Alga
3 Adžets Bhargavs Četri Meerut 65 000
5 Balvants Sings Četri Varanasi 36 000
4 Ritešs Jadavs 36 Azamgarh 26 000
10 Sahils Šeihs 35 Aurangabad 68800
9 Akašs Jadavs 32 Mumbaja 43500
8 Neeru Šarma 29 Pune 40 000
6 Mahešs Šarma 26 Mathura 22000
2 Šiva Tivari 22 Bopala 21 000
1 Himani Gupta divdesmitviens Modijs Nagars 22000
7 Rohits Šrivastava 19 Ahmedabada 38 000

Visi klientu tabulā esošie ieraksti tiek parādīti dilstošā secībā pēc klienta vecuma.

Apsveriet, ka mums ir cita tabula ar nosaukumu aģenti ar šādiem ierakstiem:

PALĪDZĪBA Vārds Darba zona Peļņa_procenti Kontaktpersonas numurs Alga
1 Gurpīts Sings Bengalūra 1 9989675432 43 000
2 Sakši Kumari Čennaja 5 8190567342 25 000
3 Prači Desai Mumbaja 2 9056123432 60 000
4 Šivani Vairāk Pune 3 8894236789 35500
5 Pallavi Singhs Deli 4 7798092341 38700
6 Rohini Kulkarni Ambala 8 7890945612 25670
7 Shweta teica Čandigarha 6 8898786453 31670
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
9 Anuška Tripathi Uz pirkstiem 9 8909124326 38 000
10 Devika Šarma Goa 7 7864523145 44050

1. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā secībā pēc aģentu tabulā saglabātajiem aģentu nosaukumiem.

Vaicājums:

mysql> SELECT *FROM agents ORDER BY Name DESC;

Šeit SELECT vaicājumā kolonnai “Nosaukums” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

PALĪDZĪBA Vārds Darba zona Peļņa_procenti Kontaktpersonas numurs Alga
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
7 Shweta teica Čandigarha 6 8898786453 31670
4 Šivani Vairāk Pune 3 8894236789 35500
2 Sakši Kumari Čennaja 5 8190567342 25 000
6 Rohini Kulkarni Ambala 8 7890945612 25670
3 Prači Desai Mumbaja 2 9056123432 60 000
5 Pallavi Singhs Deli 4 7798092341 38700
1 Gurpīts Sings Bengalūra 1 9989675432 43 000
10 Devika Šarma Goa 7 7864523145 44050
9 Anuška Tripathi Uz pirkstiem 9 8909124326 38 000

Visi aģentu tabulā esošie ieraksti tiek parādīti aģenta nosaukuma dilstošā secībā.

2. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus aģentu tabulā saglabātās aģenta algas dilstošā secībā.

Vaicājums:

mysql> SELECT *FROM agents ORDER BY Salary DESC;

Šeit SELECT vaicājumā kolonnai “Alga” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

PALĪDZĪBA Vārds Darba zona Peļņa_procenti Kontaktpersonas numurs Alga
3 Prači Desai Mumbaja 2 9056123432 60 000
10 Devika Šarma Goa 7 7864523145 44050
1 Gurpīts Sings Bengalūra 1 9989675432 43 000
5 Pallavi Singhs Deli 4 7798092341 38700
9 Anuška Tripathi Uz pirkstiem 9 8909124326 38 000
4 Šivani Vairāk Pune 3 8894236789 35500
7 Shweta teica Čandigarha 6 8898786453 31670
6 Rohini Kulkarni Ambala 8 7890945612 25670
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
2 Sakši Kumari Čennaja 5 8190567342 25 000

Visi aģentu tabulā esošie ieraksti tiek parādīti aģenta algas dilstošā secībā.

3. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā aģentu tabulā saglabātā aģenta darba apgabala secībā.

Vaicājums:

mysql> SELECT *FROM agents ORDER BY WorkArea DESC;

Šeit SELECT vaicājumā kolonnai “Darba apgabals” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

PALĪDZĪBA Vārds Darba zona Peļņa_procenti Kontaktpersonas numurs Alga
9 Anuška Tripathi Uz pirkstiem 9 8909124326 38 000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
4 Šivani Vairāk Pune 3 8894236789 35500
3 Prači Desai Mumbaja 2 9056123432 60 000
10 Devika Šarma Goa 7 7864523145 44050
5 Pallavi Singhs Deli 4 7798092341 38700
2 Sakši Kumari Čennaja 5 8190567342 25 000
7 Shweta teica Čandigarha 6 8898786453 31670
1 Gurpīts Sings Bengalūra 1 9989675432 43 000
6 Rohini Kulkarni Ambala 8 7890945612 25670

Visi aģentu tabulā esošie ieraksti tiek parādīti aģenta darba apgabala dilstošā secībā.

4. piemērs:

Uzrakstiet vaicājumu, lai kārtotu ierakstus dilstošā secībā pēc aģenta peļņas procentiem, kas saglabāti aģentu tabulā.

Vaicājums:

mysql> SELECT *FROM agents ORDER BY Profit_Percent DESC;

Šeit SELECT vaicājumā kolonnai “Profit_Percent” tiek lietota klauzula ORDER BY, lai kārtotu ierakstus. Atslēgvārds DESC sakārtos ierakstus dilstošā secībā.

Jūs saņemsiet šādu izvadi:

PALĪDZĪBA Vārds Darba zona Peļņa_procenti Kontaktpersonas numurs Alga
9 Anuška Tripathi Uz pirkstiem 9 8909124326 38 000
6 Rohini Kulkarni Ambala 8 7890945612 25670
10 Devika Šarma Goa 7 7864523145 44050
7 Shweta teica Čandigarha 6 8898786453 31670
2 Sakši Kumari Čennaja 5 8190567342 25 000
5 Pallavi Singhs Deli 4 7798092341 38700
4 Šivani Vairāk Pune 3 8894236789 35500
3 Prači Desai Mumbaja 2 9056123432 60 000
8 Sonakshi Tiwari Udaipur 2 9809453421 25050
1 Gurpīts Sings Bengalūra 1 9989675432 43 000

Visi aģentu tabulā esošie ieraksti tiek parādīti aģenta peļņas procentu dilstošā secībā.