HAVING SQL: opis, skladnja, primeri

SQL je standardni jezik za delo z relacijskimi bazami podatkov. V svojem arzenalu ima številna zmogljiva orodja za manipuliranje podatkov, shranjenih v obliki tabel.

Nedvomno je zmožnost združevanja podatkov v njihovem vzorcu na določeni osnovi eno od takih orodij. Stavek SQL HAVING, skupaj s stavkom WHERE, vam omogoča, da določite pogoje za vzorec podatkov, ki so že razvrščeni na določen način.

Parameter HAVING SQL: description

Najprej je treba omeniti, da je ta parameter neobvezen in velja samo v povezavi s parametrom GROUP BY. Kot se lahko spomnite, se GROUP BY uporablja, ko se v SELECTu uporabljajo agregatne funkcije, rezultate njihovih izračunov pa morajo pridobiti določene skupine. Če WHERE omogoča nastavitev vzorčnih pogojev, preden so podatki združeni, HAVING vsebuje pogoje, povezane s podatki, ki so že neposredno v skupinah. Za boljše razumevanje si poglejmo primer s shemo, prikazano na spodnji sliki.


To je odličen primer, ki daje HAVING SQL opis. V tej tabeli so navedena imena izdelkov, podjetja, ki jih proizvajajo, in nekatera druga področja. V zahtevi v zgornjem desnem kotu poskušamo dobiti informacije o številu imen izdelkov, ki jih proizvede vsako podjetje, s čimer želimo prikazati le tista podjetja, ki proizvajajo več kot 2 artikla. Parameter GROUP BY je sestavljen iz treh skupin, ki ustrezajo imenom podjetij, za vsako od njih se šteje število izdelkov (vrstic).Vendar je klavzula HAVING odrezala eno skupino nastalega vzorca, ker ni izpolnila pogoja. Zato dobimo dve skupini, ki ustrezata podjetjem s številom produktov 5 in 3.


Morda se postavi vprašanje, zakaj uporabiti HAVING, če je SQL KJE. Če smo uporabili WHERE, potem bi pogledali skupno število vrstic v tabeli, ne v skupinah, pogoj pa v tem primeru ne bi imel pomena. Pogosto pa se popolnoma ujemajo z eno poizvedbo.
V zgornjem primeru lahko vidimo, kako se podatki o imenih zaposlenih, ki so našteti v WHERE, najprej zberejo in nato združijo v GROUP BY, rezultat pa je dodatna kontrola zneska plače za vsakega zaposlenega.

Parameter SQL HAVING: Primeri, sintaksa

Poglejmo nekatere značilnosti skladnje HAVING SQL. Opis tega parametra je dokaj preprost. Prvič, kot smo že omenili, se uporablja izključno v povezavi s parametrom GROUP BY in je prikazan takoj za njim in pred ORDER BY, če obstaja, v poizvedbi. To je razumljivo, saj HAVING določa pogoje za združene podatke. Drugič, za ta parameter se lahko uporabijo samo agregatne funkcije in polja, podana v členu GROUP BY. Vsi pogoji v tem odstavku so navedeni na enak način kot v primeru WHERE.

Sklep

Kot lahko vidite, v tem operaterju ni nič zapletenega. Semantično se uporablja na enak način kot WHERE. Pomembno je razumeti, kaj WHERE uporablja za vse svoje podatke, in HAVING - samo glede na skupine, opredeljene v členu GROUP BY. Mi smoje predstavil izčrpen opis za HAVING SQL, ki zadostuje za samozavestno delo z njim.

Sorodne publikacije