Oracle Database Management System esteunul dintre cei mai populari reprezentanți ai unui astfel de software. Atrage mulți utilizatori datorită funcționalității sale largi și capabilităților semnificative. Și acest lucru nu este surprinzător, pentru că de cât timp a fost deja dezvoltat! Deci, de ce este Oracle interesant? Funcțiile analitice ale acestui SGBD sunt o parte importantă a capabilităților oferite. Și le vom analiza în cadrul acestui articol.
Informații generale
- Partiție.
- Organiza.
- Setați ferestre.
Cartea a fost luată ca suport teoreticTom Kite. Materialul din acesta va fi prezentat pe scurt și vor fi luate în considerare doar cele mai importante puncte. Dacă aveți nevoie de detalii, atunci vă puteți sfătui să vă referiți la sursă. Dar credeți-mă, toate informațiile de care aveți nevoie vor fi furnizate în articol.
Despre funcții
- Funcții de clasare. Acestea vă permit să construiți interogări „primul N”.
- Funcțiile ferestrei. Necesar pentru a calcula diferite agregate (operații de grup).
- Funcții de rezumat. Similar cu p.2, dar poate lucra cu toate liniile unui grup sau secțiune. Diferența cheie este lipsa ORDER BY. Acest construct nu se aplică instrucțiunii OVER. Dacă nu, atunci această funcție este utilizată în raport cu fiecare linie a secțiunii sau grupului. Dacă este prezent, se aplică ferestrei, ceea ce implică o tranziție la un alt tip (vezi punctul 2).
- Funcții statistice. Exemplele includ STDEVJPOP, VAR_SAMP și altele. Vă permite să calculați valori statistice pentru orice secțiune neordonată.
În general, putem spune că funcţiile analiticeSQL Oracle a fost deja acoperit. Dar numai în termeni generali. Nu există nicio dorință de a renunța la caz la jumătate, așa că haideți să intrăm în detalii. Și funcțiile analitice ale Oracle vor ajuta în acest sens, exemple ale cărora vor fi acum luate în considerare.
Proiectare secționare
Construcția de ordonare
În acest caz, utilizați o interogare de forma ORDER BYexpresie. În plus, pot fi aplicate DESC, ASC și NULLS FIRST / LAST. Acest construct este folosit pentru a stabili criterii pentru sortarea datelor într-o secțiune sau grup. Utilizarea ORDER BY poate avea un impact semnificativ asupra rezultatului pe care îl prezintă Oracle. Funcțiile analitice FIRST și LAST, de exemplu, se concentrează pe primul și ultimul element. Adică au sens opus! Ce ne spun FIRST și LAST? Ele indică unde ar trebui să fie valoarea NULL în ordine, la începutul unei secțiuni sau la sfârșit. Dacă nu prevedeți prezența ORDER BY, atunci se va calcula valoarea medie pentru întregul grup. Și va fi afișat pentru fiecare linie. De ce? Cert este că în acest caz funcția este considerată ca una finală. De remarcat faptul că comanda se realizează exclusiv în cadrul grupurilor sau secțiunilor.
Construcția ferestrei
De ce aveți nevoie de funcții analitice
Scopul tehnic este de a menține formularea concisă și de a accelera execuția interogărilor bazei de date. Acestea au următoarele avantaje față de operatorii SQL obișnuiți:
- Reducerea sarcinii în rețea. Ceea ce anterior necesita o serie de interogări poate fi acum preluat dintr-o singură bază de date.
- Formulare concisă și simplă. Acest lucru are ca rezultat îmbunătățirea capacităților de depanare și de perspectivă față de instrumentele tradiționale.
- Eficiența procesării. Funcțiile analitice au algoritmi de calcul care sunt optimizați pentru rezultate mai rapide.
- Transferul muncii pe server. Toate calculele sunt efectuate pe 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ă atingerea unui astfel de obiectiv strategic precum furnizarea unui instrument de bază pentru construirea așa-numitelor depozite de date de natură analitică.