Funcţiile de agregare

Funcţiile de agregare efectuează operaţii asupra mai multor valori pentru a crea rezultate de sumarizare.

Următoarea listă descrie regulile de agregare care sunt disponibile pentru coloane şi coloane de subindicatori. Lista include şi funcţii pe care le puteţi utiliza atunci când creaţi elemente calculate pentru analize.

  • Prestabilit — Aplică regula de agregare prestabilită, ca cea din modelul semantic sau ca cea creată de autorul iniţial al analizei. Agregarea nu este disponibilă pentru elementele calculate din analize.

  • Stabilit de server — Aplică regula de agregare stabilită de Oracle Analytics (de exemplu, regula care este definită în modelul semantic). Agregarea se realizează în Oracle Analytics pentru reguli simple, cum ar fi Sum, Min şi Max. Agregarea nu este disponibilă pentru coloanele de subindicatori din panoul Machetă şi nici pentru elementele calculate din analize.

  • Sumă — Calculează suma obţinută prin adunarea tuturor valorilor din setul de rezultate. Utilizaţi această regulă pentru elementele care au valori numerice.

  • Minimum — Calculează valoarea minimă (cea mai mică valoare numerică) dintre rândurile din setul de rezultate. Utilizaţi această regulă pentru elementele care au valori numerice.

  • Maximum — Calculează valoarea maximă (cea mai mare valoare numerică) dintre rândurile din setul de rezultate. Utilizaţi această regulă pentru elementele care au valori numerice.

  • Medie — Calculează valoarea medie a unui element din setul de rezultate. Utilizaţi această regulă pentru elementele care au valori numerice. Mediile din tabele şi tabele pivot sunt rotunjite la cel mai apropiat număr întreg.

  • Primul — În setul de rezultate, selectează prima apariţie a elementului, pentru subindicatori. Pentru elementele calculate, selectează primul membru, potrivit afişării din lista Selectate. Regula nu este disponibilă în dialogul Editare formulă coloană.

  • Ultimul — În setul de rezultate, selectează ultima apariţie a elementului, pentru subindicatori. Pentru elementele calculate, selectează ultimul membru, potrivit afişării din lista Selectate. Regula nu este disponibilă în dialogul Editare formulă coloană.

  • Număr — Calculează numărul de rânduri din setul de rezultate care nu au o valoare NULL pentru element. De regulă, elementul este un nume de coloană, caz în care se returnează numărul de rânduri care nu conţin valori NULL pentru acea coloană.

  • Numărare distinctă — Adaugă reguli de procesare distinctă la funcţia Count, ceea ce înseamnă că fiecare apariţie distinctă a elementului este luată în considerare o singură dată.

  • Fără — Nu se aplică nicio agregare. Agregarea nu este disponibilă pentru elementele calculate din analize.

  • Total bazat pe rapoarte (când este cazul) — Dacă nu este selectată, specifică faptul că Oracle Analytics trebuie să calculeze totalul pe baza întregului set de rezultate, înainte de a aplica filtre asupra subindicatorilor. Regula nu este disponibilă în caseta de dialog Editare formulă coloană sau pentru elementele calculate din analize. Regula este disponibilă doar pentru coloane de atribute.

Funcţie Exemplu Descriere Sintaxă

AGGREGATE AT

AGGREGATE(sales AT year)

Agregă coloanele pe baza nivelului sau nivelurilor pe care le specificaţi în ierarhia modelului de date.

  • measure este numele coloanei de subindicatori.
  • level este nivelul la care doriţi să agregaţi.

Puteţi specifica opţional mai multe niveluri. Nu puteţi specifica un nivel dintr-o dimensiune care conţine niveluri utilizate pentru subindicatorul pe care l-aţi specificat în primul argument. De exemplu, nu puteţi scrie funcţia ca AGGREGATE(yearly_sales AT month) deoarece variabila month face parte din aceeaşi dimensiune de timp utilizată ca nivel pentru subindicatorul yearly_sales.

AGGREGATE(measure AT level [, level1, levelN])

AGGREGATE BY AGGREGATE(sales BY month, region) Agregă un subindicator pe baza uneia sau mai multor coloane de dimensiuni.
  • measure este numele coloanei de subindicatori care să fie agregată.

  • column este coloana cu dimensiunea la care doriţi să agregaţi.
Puteţi agrega subindicatori pe baza uneia sau mai multor coloane.
AGGREGATE(measure BY column [, column1, columnN])

AVG

Avg(Sales)

Calculează media unui set de valori numerice.

AVG(expr)

AVGDISTINCT

 

Calculează valoarea medie a tuturor valorilor distincte ale unei expresii.

AVG(DISTINCT expr)

BIN

BIN(revenue BY productid, year WHERE productid > 2 INTO 4 BINS RETURNING RANGE_LOW)

Clasifică o expresie numerică dată într-un număr specificat de grupuri de lăţime egală. Funcţia poate returna fie numărul binului, fie unul dintre capetele intervalului binului. numeric_expr este măsura sau atributul numeric de pus în bin. BY grain_expr1,…, grain_exprN este o listă de expresii care defineşte granularitatea la care se calculează numeric_expr. BY este necesar pentru expresii de subindicator şi este opţional pentru expresii de atribut. WHERE un filtru care se aplică la numeric_expr înainte ca valorile numerice să fie atribuite binurilor INTO number_of_bins BINS este numărul de binuri de returnat BETWEEN min_value AND max_value sunt valorile min. şi max. utilizate pentru punctele finale ale binurilor de la marginile exterioare RETURNING NUMBER indică faptul că valoarea returnată ar trebui să fie numărul de binuri (1, 2, 3, 4 etc.). Aceasta este valoarea prestabilită a opţiunii. RETURNING RANGE_LOW indică valoarea inferioară a intervalului de binuri RETURNING RANGE_HIGH indică valoarea superioară a intervalului de binuri

BIN(numeric_expr [BY grain_expr1, ..., grain_exprN] [WHERE condition] INTO number_of_bins BINS [BETWEEN min_value AND max_value] [RETURNING {NUMBER | RANGE_LOW | RANGE_HIGH}])

BottomN

 

Clasifică cele mai mici n valori ale argumentului expresiei de la 1 la n, unde 1 corespunde celei mai mici valori numerice.

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică. integer este orice întreg pozitiv. Reprezintă numărul minim de clasificări afişate în setul de rezultate, 1 fiind cel mai mic rang.

BottomN(expr, integer)

COUNT

COUNT(Products)

Stabileşte numărul de elemente cu valoarea diferită de nulă.

COUNT(expr)

COUNTDISTINCT

 

Adaugă procesare distinctă la funcţia COUNT.

expr este oricare expresie.

COUNT(DISTINCT expr)

COUNT*

SELECT COUNT(*) FROM Facts

Numără rândurile.

COUNT(*)

First

First(Sales)

Selectează prima valoare returnată diferită de nulă a argumentului expresiei. Funcţia First operează la nivelul cel mai detaliat specificat în dimensiunea dvs. definită în mod explicit.

First([NumericExpression)]

Last

Last(Sales)

Selectează ultima valoare returnată diferită de nulă a expresiei.

Last([NumericExpression)]

MAVG

 

Calculează o medie mobilă pt. ultimele n rânduri de date din setul de rezultate, inclusiv rândul curent.

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică. integer este orice întreg pozitiv. Reprezintă media ultimelor n rânduri de date.

MAVG(expr, integer)

MAX

MAX(Revenue)

Calculează valoarea maximă (cea mai mare valoare numerică) a rândurilor care satisfac argumentul expresiei numerice.

MAX(expr)

MEDIAN

MEDIAN(Sales)

Calculează valoarea mediană a rândurilor care satisfac argumentul expresiei numerice. Când există un număr par de rânduri, mediana este media celor două rânduri din mijloc. Această funcţie returnează întotdeauna o valoare Double.

MEDIAN(expr)

MIN

MIN(Revenue)

Calculează valoarea minimă (cea mai mică valoare numerică) a rândurilor care satisfac argumentul expresiei numerice.

MIN(expr)

NTILE

 

Stabileşte clasificarea unei valori faţă de un interval specificat de utilizator. Returnează valori întregi pentru a reprezenta orice interval de clasificări. NTILE cu numTiles=100 returnează ceea ce se numeşte uzual „percentila” (cu numere variind de la 1 la 100, 100 reprezentând capătul superior al sortării).

expr este orice expresie utilizată pentru evaluare în funcţie de o valoare numerică. numTiles este un întreg pozitiv, nenul care reprezintă numărul de elemente alăturate.

NTILE(expr, numTiles)

PERCENTILE

 

Calculează o clasificare percentilă pt. fiecare valoare care satisface argumentul expresiei numerice. Intervalele de clasificare a percentilelor sunt cuprinse între 0 (percentila 0) şi 1 (a 100-a percentilă).

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică.

PERCENTILE(expr)

RANK

RANK(chronological_key, null, year_key_columns)

Calculează clasificarea pentru fiecare valoare care satisface argumentul expresiei numerice. Numărul cel mai mare este asignat unei clasificări 1 şi fiecărei clasificări succesive îi este asignată valoarea întreagă următoare (2, 3, 4...). Dacă unele valori sunt egale, acestora le este asignată aceeaşi clasificare (de exemplu 1, 1, 1, 4, 5, 5, 7...).

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică.

RANK(expr)

STDDEV

STDDEV(Sales) STDDEV(DISTINCT Sales)

Returnează abaterea standard pentru un set de valori. Tipul returnat este întotdeauna o valoare Double.

STDDEV(expr)

STDDEV_POP

STDDEV_POP(Sales) STDDEV_POP(DISTINCT Sales)

Returnează abaterea standard pentru un set de valori, utilizând formula de calcul pentru abaterea standard şi variaţia populaţiei.

STDDEV_POP([NumericExpression])

SUM

SUM(Revenue)

Calculează suma obţinută prin adăugarea tuturor valorilor care satisfac argumentul expresiei numerice.

SUM(expr)

SUMDISTINCT

 

Calculează suma obţinută prin adăugarea tuturor valorilor distincte care satisfac argumentul expresiei numerice.

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică.

SUM(DISTINCT expr)

TOPN

 

Clasifică cele mai mari n valori pt. argumentul expresiei, de la 1 la n, unde 1 corespunde celei mai mari valori numerice.

expr este oricare expresie utilizată pentru evaluare în funcţie de o valoare numerică. integer este orice întreg pozitiv. Reprezintă numărul maxim de clasificări afişate în setul de rezultate, 1 fiind cel mai mare rang.

TOPN(expr, integer)

Sugestii pentru utilizarea funcţiilor de agregare

Iată câteva sugestii pentru a obţine cele mai bune rezultate atunci când utilizaţi funcţii de agregare în registrele dvs. de lucru.

Sugestii:

  • Prima, Ultima. Evitaţi să utilizaţi Prima şi Ultima agregare cu un tip de diagramă cu bare 100% suprapuse. Adăugarea datei curente în câmpul După adaugă granularitate interogării, ceea ce preia toate rândurile pentru vizualizare, plus data curentă. Funcţia Ultimul returnează apoi ultimul rând din setul respectiv de rezultate, care variază în funcţie de modul în care datele sunt returnate de la sursă.
  • Min. - Utilizaţi valoarea Min. pentru a calcula cea mai mică valoare dintr-un set de rânduri. Pentru a găsi cea mai mică valoare dintr-un set de coloane, utilizaţi Evaluare. De exemplu:

    evaluate('least(%1,%2,%3)',column date 1,date 2,date 3)