select c4: vyber zenu ktora rodila ako najmaldsia: ... and days.d.datu_od-days(d.datum_od) = select minimum days(d2.datum_od- days(z2.datum_od) from clovek z2,clovek d2 where z2.id_dieta=d2.id_matka) ********************************************************** select c 5: high level vyberte vsetkych vdovcov with p (id,datum ) as (select id_manzel,max(v.datum_od) // hladame ku kazdemu muzovi datum // posledneho manzelstva from manzestvo group by id_manzel) select m.id, m.meno|' '|m.priezvisko from clovek m, manzelstvo v,clovek z,p where ( m.id=p.id and v.id_manzel=m.id and v.id_manzelka=z.id and v.datum_od=p.datum and z.datum_do is not null and v.datum_do= z.datum_do) ********************************************************** select c 6 : masters vyberte vsetky dvojice osob takych ze druha je muzsky predok tej prvej toto je uz taky rekurzivny prikladik rekurzia sa robi: urob pomocnu tabulku ktora nam posluzi na rekurziu select bude mat dve casti spojene cez union all pohlavie nas bude zaujimat az na konci, pri vypise with p (id_predok,id_potomok) as select r.id,d.id from clovek r,clovek d where (d.id_otec=r.id or d.id_matka=r.id) union all select predok.id,potomok.id from p predok,clovek potomok select c1.meno from where p.id_predok=c1.id and p.id_potomok=c2.i and c1.pohlavie ='muz' where ( ****************************************************** level 7: ultimate beginner-pro with p (id,gen) as (select id,1 from clovek where id_otec is null ) union all select potomok.id,(predok.gen+1) from p predok,clovek potomok where predok.id= potomok.id) select c.id,c.meno|' '|,c.priezvisko,gen from clovek c,p where p.id =c.id ****************************************************** skusajte si doma: bigamia, na cloveka napojim dve manzelstva a zistim ci maju neprazdny prienik casu ,ak hej => ide o bigamiu nevlastne sestry nevlsatne sesternice dieta pocate pred sobasom nemanzelske deti