Z uwagi, że nie jestem "bazodanowcem", a administratorem sieci, zwracam się do Was o pomoc.
Mam tabelę "projekty". Tabela zawiera id i id klienta.
Mam również 5 tabel w której trzymam umowy powiązane z projektami.
Tabele umów zawierają między innymi id projektu i pole "zapłacono".
Potrzebuję zadać bazie pytanie, które poda mi id projektu, w którym znajdują się umowy, które mają "status" niezapłacone (pole 'zaplacone' w tabeli umów ma wartość 0 dla nie i wartość 1 dla tak).
Przeguglałem trochę, jednak nie wiem, o co pytać.
Moje tymczasowe query do bazy, które zwraca dobry wynik dla jednej tabeli umów wygląda tak:
SELECT projekty.id, projekty.userid, faktura.projectid, dzwiekfaktura.zaplacono WHERE faktura.projectid=projekty.id AND faktura.zaplacono='0';
Na tej podstawie wymyśliłem zapytanie:
SELECT projekty.id, projekty.userid, dzwiekfaktura.projectid, dzwiekfaktura.zaplacono, dzwiekumowa.projectid, dzwiekumowa.zaplacono, obrazekfaktura.projectid, obrazekfaktura.zaplacono, obrazekumowa.projectid, bankmuzyki.projectid, bankmuzyki.zaplacono FROM projekty, dzwiekfaktura, dzwiekumowa, obrazekfaktura, obrazekumowa, bankmuzyki WHERE dzwiekfaktura.projectid=projekty.id AND dzwiekfaktura.zaplacono='0' OR dzwiekumowa.projectid=projekty.id AND dzwiekumowa.zaplacono='0' OR obrazekfaktura.projectid=projekty.id AND obrazekfaktura.zaplacono='0' OR obrazekumowa.projectid=projekty.id AND obrazekumowa.zaplacono='0' OR bankmuzyki.projectid=projekty.id AND bankmuzyki.zaplacono='0';
Niestety, zwraca również projekty, w których znajdują się zapłacone (1) umowy.
Proszę o pomoc w wygenerowaniu właściwego zapytania.
Dziękuję i pozdrawiam.