[ batasson @ 02.12.2009. 22:08 ] @
Pozdrav svim forumasima! Imam jedan problem sa upitom koji me dosta buni, pa ako je neko raspolozen za pomoc :)

Kada napisem upit:
Code:

SELECT drzave.naziv
FROM drzave INNER JOIN sudija ON drzave.id_drzava = sudija.id_drzava
WHERE (((Exists (SELECT sudija.id_drzava
                                   FROM drzave INNER JOIN sudija ON drzave.id_drzava = sudija.id_drzava
                                   WHERE sudija.id_drzava=drzave.id_drzava))=False));


Kao rezultat mi se vraca prazna tabela iako postoji zapis koji odgovara upitu. Kako rezultat bi trebalo da vrati spisak svih drzava iz kojih nema sudija.

U slucaju da promenim da upit bude 'True', dobijem tacne zapise kao rezultat, tj. spisak drzava iz kojih su sudije.
Da li neko ima ideju?? Jer ja nemam :)

Hvala!

p.s. ako nesto znaci, koristim MS Access 2007
[ Zidar @ 03.12.2009. 14:07 ] @
Citat:
Kako rezultat bi trebalo da vrati spisak svih drzava iz kojih nema sudija.


Mozda ovako:
Code:

SELECT D.naziv
FROM drzave AS D
LEFT JOIN sudija AS S ON S.id_drzava = D.id_drzava
WHERE S.id_drzava IS NULL





[ batasson @ 03.12.2009. 17:06 ] @
Nece. Desava se potpuno isto kao i sa mojim upitom.

Ovo mi stvarno nije jasno. postoje u tabeli dva zapisa koja odgovaraju kriterijumu, ali nece da ih prikaze.

Evo i tabela:

sudija ($id_sudija, ime, prezime, id_drzava)
drzave ($id_drzava, naziv)
[ Zidar @ 04.12.2009. 15:46 ] @
U ovom slucaju atbele bez podataka ne vrede. Daj podatke, nekoliko redova, pa da vidimo.
[ darkoradovcic @ 20.01.2010. 05:08 ] @
select distinct naziv from drzave where not exists (select * from sudija where id_drzava = drzave.id_drzava)