SQL rastući redoslijed

Sql Rastuci Redoslijed



U bazama podataka razvrstavanje podataka jednako je važno kao i sami podaci. Sortiranje podataka temeljna je operacija u širokom spektru aplikacija.

Razvrstavanje podataka dolazi u obzir u scenarijima u kojima trebate organizirati podatke određenim redoslijedom što je korisno za vizualizaciju podataka, prikupljanje uvida u podatke i još mnogo toga. Također čini proces dohvaćanja, čišćenja i analize podataka mnogo lakšim.

U SQL-u imamo klauzulu ORDER BY koja nam daje mogućnost sortiranja podataka u uzlaznom ili silaznom redoslijedu.







U ovom vodiču naučit ćemo kako sortirati podatke uzlaznim redoslijedom pomoću ORDER BY i ključne riječi ASC.



NAPOMENA: U svrhu demonstracije koristit ćemo Sakila uzorak baze podataka i MySQL verziju 8.0. Slobodno referencirajte i koristite bilo koji skup podataka koji smatrate primjenjivim.



SQL rastući redoslijed

Uzlazni poredak u SQL-u jednostavno se odnosi na metodu sortiranja podataka u rezultatu upita. Uzlazni redoslijed može biti numerički ili abecedni, ovisno o ciljanom stupcu sortiranja.





Kada primijenimo uzlazni redoslijed na sortiranje stupaca, SQL će organizirati podatke koji se kreću od najmanje (najniže) vrijednosti do najveće (najviše) vrijednosti.

U slučaju nizova, uzlazni poredak koristi abecedni red gdje je A najniži, a Z najviši.



SQL ORDER BY

Kao što možete pogoditi, način na koji izvodimo sortiranje, uzlazno ili silazno u SQL-u je korištenje klauzule ORDER BY.

Klauzula ORDER BY nam omogućuje sortiranje skupa rezultata upita na temelju jednog ili više stupaca. Sintaksu klauzule možemo izraziti na sljedeći način:

SELECT stupac1, stupac2, ...

IZ stola

NARUDŽBA BY stupac_za_sortiranje;

Nakon klauzule ORDER BY navodimo kriterije sortiranja. Ovo je zapravo stupac koji želimo naručiti.

SQL ASC ključna riječ

Ključna riječ ASC u kontekstu klauzule ORDER BY govori stroju baze podataka da sortira podatke uzlaznim redoslijedom.

Dobro je imati na umu da je ovo zadana opcija za klauzulu ORDER BY. Dakle, čak i ako eksplicitno ne kažemo SQL-u da sortira podatke uzlaznim redoslijedom, on će to automatski učiniti kao zadanu operaciju.

Evo sintakse o tome kako primjenjujemo ključnu riječ ASC u klauzuli ORDER BY:

SELECT stupac1, stupac2

FROM naziv_tablice

NARUDŽBA BY stupac ASC;

Ovo bi trebalo poredati navedeni stupac uzlaznim redoslijedom.

Primjer 1: Osnovna upotreba

Pogledajmo primjer upotrebe klauzule ORDER BY. Razmotrite tablicu 'film' iz uzorka baze podataka Sakila. Pretpostavimo da želimo sortirati podatke od najviše cijene najma uzlaznim redoslijedom.

IZABERI

titula,

godina izdanja,

duljina,

stopa_najamnine

IZ

film

NARUDŽBA PO

stopa najma ASC;

U ovom slučaju koristimo 'rental_rate' u klauzuli ORDER BY za brzo sortiranje filmova od najniže do najviše stope posudbe.

Rezultirajući izlaz je sljedeći:

  Automatski generiran krupni plan papira Opis

Primjer 2: Sortiranje više stupaca

SQL nam također omogućuje da pružimo više od jednog stupca kao parametar sortiranja. Ovo može biti vrlo korisno kada trebamo sortirati podatke na temelju više od jednog kriterija.

Da bismo to postigli, možemo jednostavno navesti više stupaca u klauzuli ORDER BY odvojenih zarezom.

Uzmimo tablicu 'plaćanja' iz tablice Sakila. Možemo sortirati na temelju iznosa i 'payment_date' uzlaznim redoslijedom kao što je prikazano u sljedećem primjeru upita:

IZABERI

customer_id,

iznos,

Datum plačanja

IZ

plaćanje

NARUDŽBA PO

iznos ASC,

datum_plaćanja ASC;

Ovaj bi upit trebao dohvatiti stupce 'customer_id', 'amount' i 'payment_date' iz tablice 'payment'. Međutim, upit prvo sortira rezultat uzlaznim redoslijedom na temelju iznosa plaćanja nakon kojeg slijedi datum plaćanja.

Ovo daje dvostruke kriterije sortiranja kao što je prikazano u rezultirajućoj tablici:

Zaključak

U ovom vodiču zaronili smo duboko u proces sortiranja podataka u SQL-u pomoću klauzule ORDER BY. Također smo naučili kako možemo koristiti ključnu riječ ASC za sortiranje podataka uzlaznim redoslijedom. Konačno, istražili smo kako možemo sortirati podatke pomoću više stupaca.