--Zad 2
select * from pojazdy;
select nr_rejestracyjny,marka,modell,data_produkcji,id_wlasciciela,
wlasciciel,data_up-data_produkcji, trunc(months_between(data_up,data_produkcji)/12) from wlasciciele join pojazdy using (id_wlasciciela)
where status_wlasciciela = 'osoba_fizyczna' and data_produkcji < data_up;

--Zad 6
select * from licencje;
select * from licencje join wedkarze using(id_wedkarza)
where rok = extract(year from sysdate) and id_okregu like 'PZW%'
and rodzaj = 'podstawowa';

--Zad 9
select dw.nr_akt||' '||dw.nazwisko||' '||dw.placa "pracownik 20",
tr.nr_akt||' '||tr.nazwisko||' '||tr.placa "pracownik 30"
from pracownicy dw cross join pracownicy tr
where dw.id_dzialu =20 and tr.id_dzialu=30;

--Zad 14
select rok,stopien,gr_dziekan,substr(imiona,1,1),count(*) from studenci 
where kierunek like 'MATEMATYKA_STOSOWANA_I_TECHNOLOGIE_INFORMATYCZNE'
and imiona like '%a'
group by rok,stopien, gr_dziekan,kierunek,substr(imiona,1,1);

--Zad 17
select wl.id_wlasciciela,wlasciciel,count(*),count(vin),count(distinct marka)
from wlasciciele wl left join pojazdy po
on (wl.id_wlasciciela = po.id_wlasciciela and typ ='SAM_CIEZAROWY')
group by wl.id_wlasciciela,wlasciciel having count(*) between 7 and 16 or count(vin)=0;

select wl.id_wlasciciela,wlasciciel,count(*),count(vin),count(distinct marka)
from wlasciciele wl left join pojazdy po
on (wl.id_wlasciciela = po.id_wlasciciela) where typ ='SAM_CIEZAROWY' or typ is NULL
group by wl.id_wlasciciela,wlasciciel having count(*) between 7 and 16 or count(vin)=0;

--Zad 24
select nr_indeksu, nazwisko, imiona, count(*) from oceny join studenci using(nr_indeksu)
where ocena is null
group by nr_indeksu, nazwisko, imiona
having count(*) >=2
order by 4 desc, 1;