Preporučeno, 2024

Izbor Urednika

Razlika između grupnih i redoslijeda u SQL-u

SQL omogućuje organiziranje podataka dobivenih upitom. Imamo dvije klauzule za organiziranje podataka dobivenih iz upita koji su po grupama i po nalogu. Točka koja razlikuje klauzulu grupe i reda je da se klauzula po grupi koristi kada želimo primijeniti agregatnu funkciju na više od jednog seta tuples i klauzula Order By se koristi kada želimo sortirati podatke dobivene upitom. Razgovarajmo o razlikama između klauzule Grupe i Odredbe Reda uz pomoć donjeg usporednog grafikona.

Tablica usporedbe

Osnova za usporedbuGrupiraj poRedoslijed
Osnovni, temeljniGroup By se koristi za formiranje grupe skupa torki.Redoslijed se koristi za raspoređivanje podataka dobivenih kao rezultat upita u sortiranom obliku.
AtributAtribut pod skupnom funkcijom ne može biti u klauzuli grupe po.Atribut pod zbrojem može biti u skladu s odredbom.
tloZavršeno na temelju sličnosti između vrijednosti atributa.Gotovo na temelju uzlaznog reda i padajućeg reda.

Definicija grupe po klauzuli

Agregatne funkcije kao što su avg, min, max, sum, count se primjenjuju na jedan skup toraka. U slučaju, ako želite primijeniti agregatne funkcije na skup skupa toraka, za to imamo klauzulu Group by. Grupiraj po klauzuli grupira tuple koji imaju istu vrijednost atributa.

Postoji jedna stvar koju treba zapamtiti o klauzuli Group By, budite sigurni da se atribut pod klauzulom Group By mora pojaviti u SELECT klauzuli, ali ne pod skupnom funkcijom . Ako klauzula Grupa sadrži atribut koji nije pod SELECT klauzulom ili ako je pod klauzulom SELECT, ali pod skupnom funkcijom, onda upit postaje pogrešan. Stoga možemo reći da se klauzula Group By uvijek koristi u suradnji s klauzulom SELECT.

Uzmimo primjer kako bismo razumjeli klauzulu Group By.

SELECT Odjel _ID, avg (plaća) kao avg_salary iz grupe nastavnika prema odjeljku_ID.

Možete vidjeti da se na početku formira srednji rezultat koji je grupirao odjele.

Zatim, agregatna funkcija avg primjenjuje se na svaku skupinu odjela, a rezultat je prikazan ispod.

Definicija reda po klauzuli

Klauzula Order By koristi se za prikaz podataka dobivenih upitom u sortiranom redoslijedu. Kao i klauzula Group By, klauzula Order By također se koristi u suradnji s klauzulom SELECT. Ako ne spominjete redoslijed sortiranja, klauzula Redoslijeda sortira podatke u rastućem redoslijedu. Možete odrediti uzlazni poredak kao uzlazni i silazni poredak kao desc .

Dozvolite nam da razumijemo rad klauzule Order By uz pomoć sljedećeg primjera. Imamo tablicu za učitelje i prijavit ću razvrstavanje u dva stupca Odjel_Id i Plaća tablice Učitelja.

Odaberite Odjel_ID, Plaća od učitelja prema odjeljku_dod.

Prvo možete vidjeti da raspoređuje ID odjela u rastućem redoslijedu, a zatim raspoređuje plaće u istom odjelu silaznim redoslijedom.

Ključne razlike između grupa prema redoslijedu i

  1. Skupina po klauzuli grupira skup toraka u odnosu koji su pod klauzulom SELECT. S druge strane, klauzula Order By sortira rezultat upita u rastućem ili opadajućem redoslijedu.
  2. Atribut pod skupnom funkcijom ne može biti pod klauzulom Grupa po, dok atribut pod skupnom funkcijom može biti pod stavkom Redoslijed.
  3. Grupiranje toraka vrši se na temelju sličnosti između vrijednosti atributa torkova. S druge strane, naručivanje ili sortiranje vrši se na temelju uzlaznog ili padajućeg reda.

Zaključak:

Ako želite oblikovati skupinu skupova torki, morate koristiti klauzulu Grupa po. U slučaju da želite razvrstati podatke iz jednog stupca ili više stupaca u skupu brojeva u rastućem ili opadajućem redoslijedu, morate koristiti klauzulu Order By.

Top