[ rourke @ 28.08.2006. 01:33 ] @
Pozdrav,

Nov sam u MS Accessu, i zeleo bih da zamolim za pomoc oko sledeceg upita:

imam sledece tabele:

Code:

tblRadnici
RadnikID - TEXT (GUID)
Ime - TEXT
Prezime - TEXT

tblPoslovi
PosaoID - TEXT
Naziv - TEXT

tblPosloviRadnika
PosloviRadnikaID - TEXT
PosaoID - TEXT
RadnikID - TEXT


Imam radnike i svaki od njih moze da radi na vise poslova (doda se po jedan slog za svaki posao u tblPosloviRadnika)

Meni je potrebno da za jednog RadnikID dobijem sve Radnike koji obavljaju barem jedan posao koji obavlja taj izabrani radnik, tj. da izbaci Ime i Prezime radnika koji imaju barem jedan zajednicki posao sa izabranim radnikom.

pozdrav i puno hvala na pomoci!
[ Andreja Dulovic @ 28.08.2006. 01:48 ] @
nisam proverio, ovo je "iz glave", ali mislim da je ovo upit koji ti treba.

Citat:
SELECT Ime, Prezime FROM tblRadnici WHERE RadnikID IN (SELECT DISTINCT RadnikID FROM tblPosloviRadnika WHERE PosaoID IN (SELECT PosaoID FROM tblPosloviRadnika WHERE RadnikID = 299));


gde je 299 (na primer) ID radnika za koga se radi pretraga.
inace, ovaj upit ce dati i radnika sa sifrom 299, a ako zelis da njega nema u rezultatu upit je:

Citat:
SELECT Ime, Prezime FROM tblRadnici WHERE RadnikID IN (SELECT DISTINCT RadnikID FROM tblPosloviRadnika WHERE PosaoID IN (SELECT PosaoID FROM tblPosloviRadnika WHERE RadnikID = 299)) AND RadnikID <> 299;


pozdrav

p.s. mislim da je polje "PosloviRadnikaID - TEXT" u tabeli "tblPosloviRadnika" visak (ako je ovo jedina namena tabele).
[ djalfirevic @ 28.08.2006. 18:36 ] @
Citat:
Andreja Dulovic:

p.s. mislim da je polje "PosloviRadnikaID - TEXT" u tabeli "tblPosloviRadnika" visak (ako je ovo jedina namena tabele).


Slazem se sa ovim Andreja.