Poniższe zapytanie działa poprawnie, chciałbym jednak zapytać, czy istnieje możliwość zlikwidowania UNION'a i złączenia tych dwóch zapytań w jedno?
Wydaje mi się, że tak było by wydajniej...
Chcę jednocześnie wyciągnąć informacje n/t osób przypisanych do klienta i kontrahenta w zależności od umowy.
Próbowałem z OUTER JOIN'ami, ale nie uzyskuję niestety żadnych wyników.
SELECT
o.osobaid, o.imie, o.nazwisko
FROM
umowa u,
klient kl,
kontakt ko,
osoba o
WHERE
u.klient_id = kl.klient_id
and kl.klient_id = ko.klient_id
and ko.osoba_id = o.osoba_id
and u.umowa_id = 12300
UNION
SELECT
o.osobaid, o.imie, o.nazwisko
FROM
umowa u,
klient kl,
kontakt ko,
osoba o,
kontrahent kh
WHERE
kl.klient_id = kh.klient_id
and u.umowa_id = kh.umowa_id
and kh.klient_id = kl.klient_id
and kl.klient_id = ko.klient_id
and ko.osoba_id = o.osoba_id
and u.umowa_id = 12300