Funkcija GROUPBY omogućuje stvaranje sažetka podataka pomoću formule. Podržava grupiranje duž jedne osi i agregiranje povezanih vrijednosti. Da, primjerice, imate tablicu podataka o prodaji, možete generirati sažetak prodaje po godinama.
Sintaksa
Funkcija GROUPBY omogućuje grupiranje, agregiranje, sortiranje i filtriranje podataka na temelju polja koja odredite.
Sintaksa funkcije GROUPBY :
GROUPBY(row_fields;vrijednosti;funkcija;[field_headers];[total_depth];[sort_order];[filter_array];[field_relationship])
| Argument | Opis |
|---|---|
|
row_fields (obavezno) |
Polje ili raspon usmjeren na stupac koji sadrži vrijednosti korištene za grupiranje redaka i generiranje zaglavlja redaka. Polje ili raspon može sadržavati više stupaca. U tom će slučaju izlaz imati više razina grupa redaka. |
|
vrijednosti (obavezno) |
Stupčasto orijentirano polje ili raspon podataka za agregaciju. Polje ili raspon može sadržavati više stupaca. U tom će slučaju izlaz imati više agregacija. |
|
funkcija (obavezno) |
Eksplicitni lambda (SUM, PERCENTOF, AVERAGE, COUNT itd.) koji se koristi za agregaciju vrijednosti. Može se navesti vektor lambda. U tom će slučaju izlaz imati više agregacija. Orijentacija vektora odredit će jesu li postavljeni u redovima ili stupcima. |
| field_headers | Broj koji određuje imaju li row_fields i vrijednosti zaglavlja te trebaju li se zaglavlja polja vraćati u rezultatima. Moguće su vrijednosti sljedeće: Nedostaje: Automatski (zadano) 0: Ne 1: Da i ne prikazuj 2: Ne, ali generiraj 3: Da i pokaži Napomena: Automatsko pretpostavlja da podaci sadrže zaglavlja na temelju argumenta vrijednosti. Ako je prva vrijednost tekst, a druga broj, pretpostavlja se da podaci imaju zaglavlja. Zaglavlja polja prikazuju se ako postoji više razina grupe redaka ili stupaca. |
| total_depth | Određuje trebaju li zaglavlja redaka sadržavati zbrojeve. Moguće su vrijednosti sljedeće: Nedostaje: automatski: ukupni zbrojevi i, ako je moguće, podzbrojevi (zadano) 0: Nema ukupnih zbrojeva 1: Sveukupni zbrojevi 2: Ukupni zbrojevi i podzbrojevi -1: Sveukupni zbrojevi na vrhu -2: Ukupni zbrojevi i podzbrojevi na vrhu Napomena: Za podzbrojeve polja moraju imati najmanje dva stupca. Podržani su brojevi veći od 2 pod uvjetom da polje ima dovoljno stupaca. |
| sort_order | Broj koji označava način sortiranja redaka. Brojevi odgovaraju stupcima u row_fields , a slijede stupci u vrijednostima. Ako je broj negativan, reci se sortiraju silazno/obrnuto. Vektor brojeva može se navesti prilikom sortiranja samo na temelju row_fields. |
| filter_array | 1D polje Booleovih vrijednosti usmjereno na stupac koje označava treba li uzeti u obzir odgovarajući redak podataka. Napomena: Duljina polja mora odgovarati duljini polja koja je navedena za row_fields. |
| field_relationship | Određuje polja odnosa kada je row_fields navedeno više stupaca. Moguće su vrijednosti sljedeće: 0: Hijerarhija (zadano) 1: tablica Uz odnos polja Hijerarhija (0) prilikom sortiranja kasnijih stupaca polja uzima se u obzir hijerarhija prethodnih stupaca. Kod odnosa polja tablice (1) sortiranje svakog stupca polja provodi se neovisno. Podzbrojevi nisu podržani jer se oslanjanju na hijerarhijske podatke. |
Primjeri
Prvi primjer: upotreba funkcije GROUPBY za generiranje sažetka ukupne prodaje po godinama.
Drugi primjer: upotreba funkcije GROUPBY za generiranje sažetka ukupne prodaje po proizvodu. Sortiranje silazno po prodaji.