Triedenie údajov vstupuje do hry v scenároch, v ktorých potrebujete usporiadať údaje do špecifického poradia, ktoré je užitočné na vizualizáciu údajov, zhromažďovanie prehľadov údajov a ďalšie. Tiež to značne zjednodušuje proces získavania, čistenia a analýzy údajov.
V SQL máme klauzulu ORDER BY, ktorá nám poskytuje funkciu triedenia údajov vo vzostupnom alebo zostupnom poradí.
V tomto návode sa naučíme, ako zoradiť údaje vzostupne pomocou kľúčového slova ORDER BY a ASC.
POZNÁMKA: Na demonštračné účely použijeme vzorovú databázu Sakila a MySQL verziu 8.0. Neváhajte a použite akýkoľvek súbor údajov, ktorý považujete za vhodný.
Vzostupné poradie SQL
Vzostupné poradie v SQL jednoducho odkazuje na metódu triedenia údajov vo výsledku dotazu. Vzostupné poradie môže byť číselné alebo abecedné v závislosti od cieľového stĺpca triedenia.
Keď použijeme vzostupné poradie na triedenie stĺpcov, SQL usporiada údaje, ktoré sa pohybujú od najmenšej (najnižšej) hodnoty po najväčšiu (najvyššiu) hodnotu.
V prípade reťazcov sa vzostupné poradie používa v abecednom poradí, kde A je najnižšie a Z najvyššie.
SQL ORDER BY
Ako môžete hádať, spôsob, akým vykonávame triedenie, vzostupné alebo zostupné v SQL, je pomocou klauzuly ORDER BY.
Klauzula ORDER BY nám umožňuje triediť množinu výsledkov dotazu na základe jedného alebo viacerých stĺpcov. Syntax vety môžeme vyjadriť takto:
VYBERTE stĺpec1, stĺpec2, ...Z tabuľky
OBJEDNAŤ BY stĺpec_na_triedenie;
Za klauzulou ORDER BY špecifikujeme kritériá triedenia. Toto je v podstate stĺpec, ktorý chceme objednať.
Kľúčové slovo SQL ASC
Kľúčové slovo ASC v kontexte klauzuly ORDER BY hovorí databázovému stroju, aby zoradil údaje vo vzostupnom poradí.
Je dobré mať na pamäti, že toto je predvolená možnosť pre klauzulu ORDER BY. Preto, aj keď SQL explicitne nepovieme, aby zoradil údaje vo vzostupnom poradí, automaticky to urobí ako predvolenú operáciu.
Tu je syntax toho, ako aplikujeme kľúčové slovo ASC v klauzule ORDER BY:
VYBERTE stĺpec1, stĺpec2FROM table_name
OBJEDNAŤ BY stĺpec ASC;
Toto by malo zoradiť zadaný stĺpec vo vzostupnom poradí.
Príklad 1: Základné použitie
Pozrime sa na príklad použitia klauzuly ORDER BY. Zvážte tabuľku „filmov“ zo vzorovej databázy Sakila. Predpokladajme, že chceme zoradiť údaje od najvyššej ceny prenájmu vo vzostupnom poradí.
SELECTtitul,
release_year ,
dĺžka,
rent_rate
OD
film
OBJEDNAŤ BY
rent_rate ASC;
V tomto prípade používame „rental_rate“ v klauzule ORDER BY na rýchle zoradenie filmov od najnižšej po najvyššiu sadzbu za prenájom.
Výsledný výstup je nasledovný:
Príklad 2: Triedenie viacerých stĺpcov
SQL nám tiež umožňuje poskytnúť viac ako jeden stĺpec ako parameter triedenia. To môže byť veľmi užitočné, keď potrebujeme zoradiť údaje na základe viac ako jedného kritéria.
Aby sme to dosiahli, môžeme jednoducho uviesť viacero stĺpcov v klauzule ORDER BY oddelených čiarkou.
Zoberme si tabuľku „platba“ z tabuľky Sakila. Môžeme triediť na základe sumy a „dátum_platby“ vo vzostupnom poradí, ako je uvedené v nasledujúcom príklade dopytu:
SELECTcustomer_id,
množstvo,
dátum_platby
OD
platba
OBJEDNAŤ BY
množstvo ASC,
dátum_platby ASC;
Tento dopyt by mal načítať stĺpce „customer_id“, „amount“ a „payment_date“ z tabuľky „payment“. Dotaz však najskôr zoradí výsledok vzostupne na základe sumy platby, po ktorej nasleduje dátum platby.
To poskytuje dvojité kritériá triedenia, ako je uvedené vo výslednej tabuľke:
Záver
V tomto návode sme sa ponorili hlboko do procesu triedenia údajov v SQL pomocou klauzuly ORDER BY. Tiež sme sa naučili, ako môžeme použiť kľúčové slovo ASC na zoradenie údajov vo vzostupnom poradí. Nakoniec sme preskúmali, ako môžeme zoradiť údaje pomocou viacerých stĺpcov.