--- 1 select id, imie, nazwisko, coalesce(sum(saldo),0) from Klient left join Konto on id = idklienta group by id, imie, nazwisko; --- 2 select nadawca from Przelew group by nadawca having count(distinct odbiorca) < 6; [dla pedantów: union (select numer from Konto where numer not in (select nadawca from Przelew)) ] --- 3 select numer from Konto where numer in (select nadawca from Przelew) or numer in (select odbiorca from Przelew); select nadawca from przelew --??? distinct intersect select odbiorca from przelew; --- 4 select nadawca from Przelew group by nadawca having count(distinct odbiorca) = (select count(*) - 1 from Konto); --- 5 create view czworki as select * from przelewy p1 where (nadawca,odbiorca,data) in (select nadawca,odbiorca,data from transakcja where odbiorca = p1.odbiorca order by kwota desc limit 4); select odbiorca from czworki group by odbiorca having sum(kwota) > 10000;