Clasificarea tipurilor de funcții analitice în Oracle. Funcții analitice în Oracle și principalele caracteristici tehnice

Sistem de gestionare a bazelor de date

Oracle este unul dintre cei mai populari reprezentanți ai acestui software. Acesta atrage mulți utilizatori datorită funcționalității sale largi și capacităților semnificative. Și acest lucru nu este surprinzător, deoarece cât timp este deja dezvoltat! Deci, ce este interesant despre Oracle? Funcții analitice Acest DBMS reprezintă o parte importantă a capabilităților oferite. Și le vom examina în cadrul acestui articol.

Informații generale

oracle funcții analiticeInițial, trebuie remarcat faptul că în Oracle funcțiile analitice au capacități specifice, dar folosesc o sintaxă comună. Pentru a le înțelege, trebuie să înțelegeți modul în care datele:

  1. Partition.
  2. Organizarea.
  3. Specificați ferestrele.

Ca suport teoretic, cartea lui Tom Kait a fost luată. Materialul din acesta va fi descris pe scurt și vor fi luate în considerare numai cele mai importante puncte. Dacă aveți nevoie de detalii, vă puteți sfătui să vă întoarceți la sursă. Dar crede-mă, toate informațiile necesare vor fi furnizate în cadrul articolului.

Despre funcții

funcții analitice oracleCum arata? În Oracle, funcțiile analitice sunt construite pe acest principiu: Nume (argument, hellip-). OVER (fragmentare, ordonare, fereastră). Cum să înțelegeți că acesta este exact ceea ce aveți nevoie? Datorită cuvântului OVER. Acesta vă permite să identificați funcția de intrare ca o funcție analitică. Tot ce vine după OVER este descrierea fisei de date, pe care va fi calculată. Și acum câteva cuvinte generale despre clasificare. În mod convențional, există patru tipuri (în funcție de capacitățile furnizate):

  1. Funcții de clasificare. Acestea vă permit să creați "primul N" interogări.
  2. Funcțiile ferestrei. Este necesar să se calculeze o varietate de agregate (operațiuni în grup).
  3. Funcții sumare. Similar cu elementul 2, dar poate funcționa cu toate rândurile unui grup sau unei secțiuni. Diferența principală este lipsa ORDER BY. Această construcție nu este utilizată în declarația OVER. Dacă nu este prezent, această funcție este folosită în raport cu fiecare linie a secțiunii sau grupului. Dacă este disponibil, se aplică ferestrei, ceea ce implică o tranziție la alt tip (vezi secțiunea 2).
  4. Funcții statistice. Un exemplu este STDEVJPOP, VAR_SAMP și altele. Vă permit să calculați valorile indicatorilor statistici pentru orice secțiune neordonată.

În general, putem spune că funcțiile analitice ale Oracle sunt deja luate în considerare. Dar numai în termeni generali. Aruncă cazul până la jumătate nu există dorință, așa că haideți detalii. Și funcțiile analitice ale Oracle vor ajuta în acest sens, exemple de care vor fi acum luate în considerare.

Secțiunea Design

funcții analitice sql oraclePentru a face acest lucru, utilizați formularul de interogare PARTITION BY expression [, hellip-]. Acest design oferă o defalcare logică a rezultatului stabilit pe un anumit grup, în conformitate cu criteriile care au fost stabilite de expresiile sectionare. În acest caz, funcțiile analitice Oracle sunt aplicate independent cu privire la fiecare entitate de interacțiune. Aceasta este, după tratamentul a fost făcut, acestea sunt eliminate pentru noul grup. Ce se întâmplă dacă designul de partiționare nu este specificat? În acest caz, setul rezultat va fi considerat un grup.

Structura de comandă



În acest caz, utilizați expresia ORDER BY din formularul de interogare. În plus, DESC, ASC și NULLS FIRST / LAST pot fi aplicate. Acest design este folosit pentru a sorta datele într-o secțiune sau grup. Utilizarea ORDER BY poate afecta semnificativ rezultatul pe care Oracle îl va prezenta. Funcțiile analitice FIRST și LAST, de exemplu, sunt ghidate de primul și ultimul element. Adică, ele sunt opuse în sens! Și ce spunem PRIMUL și SUNT? Acestea indică unde trebuie să fie valoarea NULL la comanda, la începutul secțiunii sau la final. Dacă nu asigurați prezența ORDER BY, atunci se calculează valoarea medie pentru întregul grup. Și va fi emis pentru fiecare linie. De ce? Faptul este că în acest caz funcția este considerată finală. Trebuie remarcat faptul că ordonarea este efectuată exclusiv în cadrul grupurilor sau secțiunilor.

Designul ferestrelor

funcții analitice exemple oracleConstrucția sa este foarte complicată. La urma urmei, acesta este setat prin intermediul ferestrei rigid legat sau în mișcare (interval, setați) datele din secțiunea (e), care va interacționa funcția analitică. Puteți specifica limitele inferioare și superioare de agregare. Cu alte cuvinte, în astfel de cazuri, vom lua o decizie cu privire la aplicarea funcțiilor analitice pentru fiecare rând al secțiunii (e) cu numărul de X de Y. Atunci când se utilizează fereastra joacă un rol important ORDER BY. fixat pe intervalul standard, este considerat a fi alegerea primul rând grupul curent.

De ce funcțiile analitice

Scopul tehnic este de a oferi o formulă concisă și de a contribui la viteza interogării bazei de date. Înainte de operatorii obișnuiți SQL, ei au astfel de avantaje:

  1. Reduceți sarcina pe rețea. Asta pentru care o serie întreagă de solicitări a fost solicitată anterior, poate fi acum extras din baza de date într-una.
  2. Formula laconică și simplă. Datorită acestui fapt, posibilitățile de depanare și de înțelegere s-au îmbunătățit în comparație cu mijloacele tradiționale.
  3. Eficiența prelucrării. Functiile analitice au algoritmi de calcul, care sunt optimizate pentru a produce rezultate cu o viteză mai mare.
  4. Transferarea muncii la server. Toate calculele sunt efectuate pe un server ale cărui resurse sunt de obicei mai potrivite pentru această sarcină.

De asemenea, introducerea unor astfel de funcții a făcut posibilă realizarea unui astfel de obiectiv strategic, care oferă un instrument de bază pentru construirea așa-numitelor antrepozite analitice de date.

concluzie

oracle funcții analitice primulCe pot spune la sfârșitul articolului? Funcțiile analitice reprezintă o soluție foarte interesantă. Pentru a înțelege mai bine specificul lor, pot fi instruiți în utilizarea lor în baze de date complexe și mari. Ca exemplu de comparare, puteți alege funcții tradiționale, cum ar fi SUM, MAX și altele asemenea. Dar tineti minte ca ele actioneaza ca un rezultat intermediar al calculelor. Prin urmare, le puteți utiliza numai cu SELECT sau ORDER BY. Trebuie să recunoaștem că acest subiect este foarte interesant. Aici, există mai multe variante, și le descrie, teoretic, toate problematice. Este necesar să încercați și să lucrați cu cererile.

Distribuiți pe rețelele sociale:

înrudit
Cum se instalează Java pe Windows 7Cum se instalează Java pe Windows 7
Cum se actualizează Java pe sistemele de operare Linux și Windows?Cum se actualizează Java pe sistemele de operare Linux și Windows?
Fișier SQL. Formatul de fișier SQL: descrierea extensieiFișier SQL. Formatul de fișier SQL: descrierea extensiei
Funcții de marketingFuncții de marketing
Cum se compun interogările SQL - exemple detaliateCum se compun interogările SQL - exemple detaliate
Java: expresii regulate, caractere specialeJava: expresii regulate, caractere speciale
Software general pentru aplicații: exempleSoftware general pentru aplicații: exemple
Detalii despre ce să deschidă ODGDetalii despre ce să deschidă ODG
O oracolă este un obiect sau o persoană?O oracolă este un obiect sau o persoană?
Oracle - ce este? Oracle DatabaseOracle - ce este? Oracle Database
» » Clasificarea tipurilor de funcții analitice în Oracle. Funcții analitice în Oracle și principalele caracteristici tehnice