Document, comentariu, eseu, bacalaureat, liceu si facultate
Top documenteAdmitereTesteUtileContact
      
    


 


Ultimele referate adaugate

Adauga referat - poti sa ne ajuti cu un referat?

Politica de confidentialitate



Ultimele referate descarcare de pe site
  CREDITUL IPOTECAR PENTRU INVESTITII IMOBILIARE (economie)
  Comertul cu amanuntul (economie)
  IDENTIFICAREA CRIMINALISTICA (drept)
  Mecanismul motor, Biela, organe mobile proiect (diverse)
  O scrisoare pierduta (romana)
  O scrisoare pierduta (romana)
  Ion DRUTA (romana)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  COMPORTAMENT PROSOCIAL-COMPORTAMENT ANTISOCIAL (psihologie)
  Starea civila (geografie)
 

Ultimele referate cautate in site
   domnisoara hus
   legume
    istoria unui galban
   metanol
   recapitulare
   profitul
   caract
   comentariu liric
   radiolocatia
   praslea cel voinic si merele da aur
 
despre:
 
Functii de grup - ORACLE
Colt dreapta
Vizite: ? Nota: ? Ce reprezinta? Intrebari si raspunsuri
 
g6z20zl
Acest capitol explica cum informatiile concise pot fi obtinute pen- tru grupuri de siruri folosind functiile de grup.

Vom discuta cum puteti divide sirurile dintr-o tabela in seturi mai mici si cum sa specificati criteriile de cautare intr-un grup de siruri.

Functiile de grup se aplica unui set de siruri.Ele intorc rezultate bazate pe grupuri de siruri , spre deosebire de un rezultat pe sir care e returnat de functii singulare.De regula , toate sirurile din tabela sunt tratate ca un grup.Clauza GROUP BY din cadrul lui SELECT e folosita pentru a imparti sirurile in grupuri mai mici.

Functiile de grup sunt listate mai jos:

Valoare returnata

AVG(ADISTINCT/ALLS) valoarea medie a lui n, ignorind valorile nule.
COUNT(ADISTINCT/ALLS expr*) nr. de siruri unde expresia e evaluata la altceva decit NULL. (*) face ca COUNT sa numere toate sirurile selectate, incluzind duplicatele si sirurile cu NULL.
MAX(ADISTINCT/ALLSexpr) maximul valorilor expr.
MIN(ADISTINCT/ALLSexpr)D minimul valorilor expresiei expr.
STDDEV(ADISTINC/ALLSn) deviatia standard a lui n , ignorind valorile nule.
SUM(ADISTINC/ALLSn) suma valorilor lui n , ignorind valorile nule.
VARIANCE(ADISTINCT/ALLSn) variatia lui n , ignorind valorile nule.
Toate functiile de deasupra opereaza pe un nr. de siruri (de ex., o intreaga tabela) si sunt cunoscute ca functii de grup sau agregate. DISTINCT face ca functia de grup sa considere doar valorile(nedupli- cate).

ALL considera fiecare valoare , incluzind si toate duplicatele. Implicit este ALL.
Tipul datelor argumentelor poate fi CHAR,NUMBER sau DATA unde expr e listata.
Toate fuctiile de grup cu exceptia lui COUNT(*) ignora valorile nule. Folositi NVL ca de obicei pentru a include null.

FUNCTII DE GRUP
Folosirea functiilor de grup
Pentru a calcula salriul mediu al tuturor angajatilor, introducem :




SELECT AVG(SAL)

FROM EMP;

AVG(SAL)

--------

2073.21429

Notati ca liniile din tabela EMP sint considerate ca un singur grup.

O functie de grup poate fi aplicata pe un subset de linii din tabela prin folosirea clauzei WHERE.

Pentru a gasi salariul minim cistigat de un functionar, introducem :

SELECT MIN(SAL)

FROM EMP

WHERE JOB = 'CLERK';

MIN(SAL)

--------

800

Pentru a numara angajatii din departamentul 20, introducem :

SELECT COUNT(*)

FROM EMP

WHERE DEPTNO = 20;

COUNT(*)

--------

5

Clauza GROUP BY
Clauza GROUP BY poate fi folosita pentru a imparti liniile dintr-o tabela in grupuri mai mici. Functiile de rup pot fi folosite pentru a intorece informatii sumare pentru fiecare grup.

Pentru a calcula salariul mediu pentru fiecare functie diferita, introducem:

SELECT JOB, AVG(SAL)

FROM EMP

GROUP BY JOB;

JOB AVG(SAL)

------- -----------

ANALYST 3000

CLERK 1037.5

MANAGER 2758.33333

PRESIDENT 5000

SALESMAN 1400

Excluderea liniilor cind folosim GROUP BY
Liniile pot fi excluse mai intii cu o clauza WHERE, inainte de a le imparti in grupuri.

Pentru a determina salariul mediu pentru fiecare functie in afara de manager, introducem :

SELECT JOB, AVG(SAL)

FROM EMP

WHERE JOB != 'MANAGER'

GROUP BY JOB;

JOB AVG(SAL)

------- -----------

ANALYST 3000

CLERK 1037.5

PRESIDENT 5000

SALESMAN 1400

Solutii

SELECT MIN(SAL) MINIMUM

FROM EMP;

SELECT MAX(SAL), MIN(SAL), AVG(SAL)

FROM EMP;

SELECT JOB,

MAX(SAL) MAXIMUM,

MIN(SAL) MINIMUM

FROM EMP

GROUP BY JOB;

SELECT COUNT(*) MANAGERS

FROM EMP

WHERE JOB = 'MANAGER';

SELECT JOB,

AVG(SAL) AVSAL,

AVG(SAL * 12 + NVL(COMM, 0)) AVCOMP

FROM EMP

GROUP BY JOB;

SELECT MAX(SAL) - MIN(SAL) DIFFERENCE

FROM EMP;

SELECT DEPTNO, COUNT(*)

FROM EMP

GGROUP BY DEPTNO

HAVING COUNT(*) > 3;

SELECT EMPNO

FROM EMP

GROUP BY EMPNO

HAVING COUNT(*) > 1;

SELECT MGR, MIN(SAL)

FROM EMP

GROUP BY MGR

HAVING MIN(SAL) >= 1000

ORDER BY MIN(SAL);


Colt dreapta
Creeaza cont
Comentarii:

Nu ai gasit ce cautai? Crezi ca ceva ne lipseste? Lasa-ti comentariul si incercam sa te ajutam.
Esti satisfacut de calitarea acestui document, eseu, cometariu? Apreciem aprecierile voastre.

Nume (obligatoriu):

Email (obligatoriu, nu va fi publicat):

Site URL (optional):


Comentariile tale: (NO HTML)


Noteaza documentul:
In prezent fisierul este notat cu: ? (media unui numar de ? de note primite).

2345678910

 
Copyright© 2005 - 2024 | Trimite document | Harta site | Adauga in favorite
Colt dreapta