Delphi - SQL - Zobrazenie záznamov podľa podmienky
Mám tabuľky:
Pracovnik.db
ID autoinc
Meno varchar(25)
Skryt boolean
Praca.db
ID autoinc
Nazov varchar(25)
Skryt boolean
Praca_pracovnik.db
ID autoinc
PRACOVNIK_ID integer
PRACA_ID integer
Priorita integer
Skryt boolean
Pre tabuľku Praca_pracovnik.db som nastavil toto:
select
*
from
Praca_pracovnik.db, Pracovnik.db, Praca.db
where
Skryt = false
and PRACOVNIK_ID = (Pracovnik.db.ID)
order by
ID
Problém spočíva v tom, že sa mi zobrazia aj záznamy, kde sa PRACOVNIK_ID nerovná Pracovnik.ID a už z toho idem zošedivieť.
Tu je výsledok príkazu:
http://img267.imageshack.us/img267/2881/schrnka01ue 8.gif
Edit 1:
A keď tam dám nasledujúci riadok, tak je výsledok prázdna tabuľka:
and PRACOVNIK_ID = (Pracovnik.db.ID) and PRACA_ID = (Praca.db.ID)
Ak sa nemýlim, malo by mi zobraziť tabuľku Praca_pracovnik, ale miesto ID kódov by malo dosadiť Meno a Nazov (samozrejme, ak nebude za select *, ale len vybrané položky).
Edit 2:
Pre lepšie vysvetlenie:
Nesmie sa rovnať ID a PRACOVNIK_ID, ale PRACOVNIK_ID a ID_1. ID_1 je v skutočnosti Pracovnik.db.ID.
Ak zadám nasledujúci riadok, tak dostanem Invalid field name ID_1:
and PRACOVNIK_ID = (ID_1)