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:
 
TRAVERSAREA ARBORILOR
Colt dreapta
Vizite: ? Nota: ? Ce reprezinta? Intrebari si raspunsuri
 
j7t7tt
Acest capitol detaliaza recuperarea datelor bazate pe o relatie ierarhi- ca naturala intre doua linii ale tabelei.

Traversarea arborilor
Tabela EMP are o structura arborescenta reprezentand linia de raport a conducerii.

Parcurgerea arborelui

KING EMPNO=7839

|

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

| | | MGR=7839

CLARK JONES BLAKE

| | |

| ------ -------------------------

| | | | | | | |

MILLER SCOTT FORD ALLEN WARD MARTIN TURNER JAMES

| |

| |

ADAMS SMITH

O baza de date relationala nu contine inregistrarile intr-un mod ierarhic. Oricum, unde exista o legatura ierarhica intre liniile unei singure tabele, este un proces numit 'parcurgere de arbore' care face posibil ca ierarhia sa fie construita.Ierarhia poate fi creata privind la legatura dintre valorile echivalente in coloanele EMPNO si MGR(Aceasta legatura a fost deja exploa- tata cu join-ul unei tabele cu ea insesi). Numarul MGR al unui angajat este EMNO-ul sefului sau.

Cand este realizata o parcurgere de arbore, nu va asteptati sa vedeti rezultatul cererii asemanator cu figura afisata mai sus. Numerele LEVEL (de nivel) sunt stabilite cand apare parcurgerea arborelui si reprezinta cat de indepartate sunt nodurile (liniile) de radacina (nodul de start).

Pentru a construi un arbore de traversare din tabela EMP, introduceti:

SELECT LEVEL, DEPTNO, ENAME, JOB, SAL

FROM EMP

CONNECT BY PRIOR EMPNO = MGR

START WITH MGR IS NULL;

Comanda Descriere

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

SELECT Clauza SELECT standard, cu pseudo-coloana LEVEL

care afiseaza cat de departe este fiecare nod

de nodul de start.

FROM Puteti sa SELECT FROM o singura tabela.

WHERE Limiteaza liniile care sunt vizitate in timpul




parcurgerii.

CONNECT BY Specifica coloanele unde exista legatura intre

linii. Aceasta clauza este ceruta pentru o

parcurgere de arbore.

PRIOR Stabileste directia in care este parcurs arbo-

rele. Daca PRIOR apare inainte de MGR, atunci

valorile in coloana MGR sunt vizitate primele,

apoi sunt gasite valorile echivalente din

EMPNO, care este in susul arborelui. Daca PRIOR

apare inainte de EMPNO atunci arborele este in

jos.

START WITH Specifica unde sa inceapa arborele. Nu poate

incepe la un nivel(LEVEL). Aceasta clauza

este optionala chiar cand este ceruta o par-

curgere de arbore.

ORDER BY Apare la sfarsit de obicei.

In exemplul de mai sus, structura ierarhica a organizatiei este reflectata in parcurgerea arborelui. Structura raportata conducere/angajati poate fi identificata cu claritate.

Puteti folosi clauza ORDER BY pentru a sorta liniile returnate.Urmatoarea comanda este perfect legitima:

SELECT LEVEL, DEPTNO, ENAME, JOB, SAL

FROM EMP

CONNECT BY PRIOR EMPNO = MGR

START WITH MGR IS NULL

ORDER BY DEPTNO;

Oricum, este recomandat sa nu folositi clauza ORDER BY la parcurgerea arbo- relui pentru ca ordonarea implicita a arborelui poate fi distrusa. In exemplul de mai jos, ordinea in care liniile lui SCOTT, ADAMS, FORD si SMITH sunt afisate s-a schimbat, si ADAMS pare sa se raporteze la FORD cand SCOTT este de fapt seful sau. Iesirea (rezultatul) nu reflecta ierarhia "adevarata".

SELECT LEVEL, DEPTNO, ENAME, JOB, SAL

FROM EMP

CONNECT BY PRIOR EMPNO = MGR START WITH MGR IS NULL

ORDER BY DEPTNO;

Parcurgerea arborilor

SELECT ENAME, LEVEL, JOB

FROM EMP

CONNECT BY PRIOR EMPNO = MGR

START WITH MGR IS NULL

EXCLUDERI :

WHERE ENAME!='SCOTT'

JONES

|

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

| |

SCOTT (se sterge) FORD

| |

ADAMS SMITH

CONNECT BY PRIOR EMPNO=MGR

AND ENAME!='SCOTT'

JONES

|

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

| |

SCOTT (se sterge) FORD

| |

ADAMS (se sterge) SMITH

TERMINOLOGIE
Sunt cativa termeni mai degraba neobisnuiti cand parcurgeti arborele. Nu este nevoie sa-i amintim pe toti, decat pentru informatie:

NODE acelasi lucru cu o linie

ROOT un nod care nu este in proprietatea nimanui

PARENT un nod care are alte noduri la un nivel inferior

CHILD un nod care are un PARENT

TERMINAL NODE sau LEAF un nod fara fii

BRANCH un nod cu fii si nepoti

Chirurgia arborelui
Clauzele WHERE si CONNECT pot fi folosite pentru a curata arborele, care controleaza ce noduri sunt afisate. Daca clauza WHERE este folosita pentru a elimina un nod, atunci doar acel nod este eliminat. Daca restrictia apare in clauza CONNECT BY atunci intreaga ramura este eliminata.

In exemplul urmator, numai linia SCOTT este eliminata, fiii sai sunt inca procesati.

BREAK ON DEPTNO SKIP 1

SELECT LEVEL, DEPTNO, ENAME, JOB, SAL

FROM EMP WHERE ENAME != 'SCOTT'

CONNECT BY PRIOR EMPNO = MGR

START WITH MGR IS NULL;

In exemplul de mai jos, intreaga ramura SCOTT a fost eliminata:

SELECT LEVEL, DEPTNO, ENAME, JOB, SAL

FROM EMP

CONNECT BY PRIOR EMPNO = MGR AND ENAME != 'SCOTT'

START WITH MGR IS NULL;

Notati ca de aceasta data ambele linii, parinte (SCOTT) si fiu (ADAMS), au fost excluse.

Alte utilizari ale parcurgerii arborilor
Organizarea tabelelor nu este singura aplicatie a unei cereri structura- te pe arbore. Clauza CONNECT BY poate fi folosita de asemenea in:

nota de plata a aplicatiilor materiale, sa produca explozii sau implozii partilor indentate. bilantul aplicatiilor pentru scopuri de consolidare.


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