Šta je novo?

Malo SQL koda... samo malo...

!rabas

Čuven
Učlanjen(a)
09.12.2003
Poruke
630
Poena
619
[code:1]
select d.DEPARTMENT, e.FULL_NAME, e.JOB_COUNTRY, e.HIRE_DATE
from EMPLOYEE e
inner join DEPARTMENT d on d.dept_no = e.dept_no
[/code:1]
moze li mi neko pojasniti ovaj kod i narocito sta oznacavaju ova slova ispred d.; e. itd....
 
d.DEPARTMENT

d je ime tabele, DEPARTMENT je ime atributa
analogno za ostalo
 
Jos preciznije, recimo:
e.FULL_NAME

e je skracenica (alias) za puno ime tabele, FULL_NAME je ime atributa
U polju FROM vidis da je "e" alias za tabelu EMPLOYEE (mislim da ti ovde u kodu fali jedno "IME_TABELE d", koje bi definisalo nasta se odnosi ovo d, a moze da pise i samo
from EMPLOYEE e, d
sto bi znacilo da se tabela stvarno zove d


Sto se tice toga sta kod znaci:
selektuj kolonu DEPARTMENT iz tabele d, kolonu FULL_NAME iz tabele e, JOB_COUNTRY iz tabele e, i HIRE_DATE iz tabele e (samo te kolone ce postojati u rezultatu)

Iz tabela e, gde je e skracenica za tabelu EMPLOYEE (kao sto rekoh mislim da ovde u kodu fali podatak _ImeTabele_ d)
(za operacuje koristi sledece tabele)

i spoji ih po atributu dept_no. Malo je komplikovano da ti objasnjavam u sta ce se tacno smestiti i kakav ce biti rezultat.
(spoj tabele po odredjenom kriterijumu)

Nisam ti objasnio ni kakvu varijaciju radi Inner Join u odnosu na standardni Join (Imas join, left/right join, outer/inner join i sve njihove kombinacije koje rade slicne ali ne i iste stvari). Za vise detalja idi na
http://www.puskice.co.yu/index.php?id=cetvrta1&predmet=baze
poskidaj sve materijale pa studiraj, a pogotovo skriptu.
 
Evo objasnjenja:
Prvo pogledaj FROM klauzulu:
from EMPLOYEE e
inner join DEPARTMENT d on d.dept_no = e.dept_no
dakle Odakle se vrsi Selektovanje! Pa vrsi se iz neke da tako kazemo privremene tabele koja je nastala Spajanjem (Join){ovo inner nemoj puno da te buni; to je jedna vrsta spajanja, tzv unutrasnje spajanje tj. spajanje po jednakosti - znaci spajaju se one n-torke kod kojih je jednaka vrednost atributa - dept_no u ovom slucaju} tabele EMPLOYEE e (ovo e je kao sto ti rece covjek prije Alijas, to jest da ne bi stalno pisali EMPLOYEE od sad je zovemo e) i tabele DEPARTMENT d (vidis ovu tabelu zovemo d).
(i cim damo alijas tabeli svim njenim atributima pristupamo sa alijas.ime atributa (e.FULL_NAME, d.DEPARTMENT)).
E tek sad SELECT:
Prikazijemo samo vrednosti atributa d.DEPARTMENT, e.FULL_NAME, e.JOB_COUNTRY, e.HIRE_DATE iz tabele dobijene Spajanjem.

Vrlo je jednostavno ako posmatras pravim redom.
Srecno!
 
Zahvaljujem vam u svoje ime na zaista iscrpnim objasnjenjima... Mislim da zaista nije trebalo toliko, ali zaista hvala.... Poz
 
Nazad
Vrh Dno