Zadatak je ovakav
Prikazati sve podatke o lokalima koji us iznajmljeni više puta nego što Marko Marković posjeduje Lokala, a manje nego ukupan broj iznajmljivanja Ivana Ivanica
Ja sam napisao kod ovako:
SELECT L.IDLokala, L.IDPoslCentra, L.IDVlasnika, L.IDVrsteLokala, L.Naziv, L.Povrsina, L.Telefon, count(*)
FROM Lokal L, UGOVOR U, KLIJENT K
WHERE U.IDLokala=L.IDLokala
AND U.IDKlijenta=K.IDKlijenta
GROUP BY L.IDLokala, L.IDPoslCentra, L.IDVlasnika, L.IDVrsteLokala, L.Naziv, L.Povrsina, L.Telefon
HAVING COUNT(*)>(SELECT count(*)
FROM VLASNIK V, LOKAL L
WHERE L.IDVlasnika=V.IDVlasnika
AND V.Ime LIKE 'Marko'
AND V.Prezime LIKE 'Markovic'
HAVING COUNT(*)<(SELECT count(*)
FROM KLIJENT K, UGOVOR U, LOKAL L
WHERE U.IDLokala=L.IDLokala
AND U.IDKlijenta=K.IDKlijenta
AND K.Ime LIKE 'Ivan'
AND K.Prezime LIKE 'Ivanic')
)
Pretpostavljam da je ovo moja logička greška u drugom podupitu. Naime Marko Markovic posjeduje 2 lokala, a Ivan Ivanic je ukupno iznajmljivao 5 puta. Meni treba da mi izlista one lokale koji su iznajmljeni 3 ili 4 puta, ali kada pokrenem upit on mi izlista i one sa 5 ili 6 iznajmljivanja.
Unaprijed hvala na bilo kakvoj pomoći.