--1 --a --select indeks --from dosije --where mesto_rodjenja='Beograd' --union --select indeks --from ispit --where ocena=10 --order by indeks desc; --b --select indeks --from dosije --where mesto_rodjenja='Beograd' --intersect --select indeks --from ispit --where ocena=10 --order by indeks desc; --c --select indeks --from dosije --where mesto_rodjenja='Beograd' --except --select indeks --from ispit --where ocena=10 --order by indeks desc; --2 --select indeks, id_predmeta, ocena, case -- when ocena=10 then 'deset' -- when ocena=9 then 'devet' -- when ocena=8 then 'osam' -- when ocena=7 then 'sedam' -- when ocena=6 then 'sest' -- else 'nepolozen' -- end as rezultat_ispita --from ispit; --ili --select indeks, id_predmeta, ocena, case ocena -- when 10 then 'deset' -- when 9 then 'devet' -- when 8 then 'osam' -- when 7 then 'sedam' -- when 6 then 'sest' -- else 'nepolozen' -- end as rezultat_ispita --from ispit; --3 --select naziv, case -- when bodovi>7 then 'I kat' -- when bodovi>4 then 'II kat' -- else 'III kat' -- end as kategorija --from predmet; --4 --select distinct current_time from dosije; --values current time; --select current_time from sysibm.sysdummy1; --5 --values user; --6 --values dayname(date('4.11.2015')); --values dayname('4.11.2015'); --7 --values (dayofyear(current_date), -- week(current_date), -- dayofweek(current_date), -- dayname(current_date), -- monthname(current_date)); --8 --values second(current_time) ; --9 --values date('2008-11-11') - date('2005-08-06'); --10 --values current date + 12 years + 5 months + 25 days; --11 --select * --from ispit --where datum_ispita>date('2015-01-28'); --select * --from ispit --where datum_ispita>'2015-01-28'; --12 --select * --from ispit --where current_date-datum_ispita < 800; --13 --select indeks, naziv, ocena, -- year(current_date-datum_ispita) godina, -- month(current_date-datum_ispita) meseci, -- day(current_date-datum_ispita) dana --from ispit i join predmet p on i.id_predmeta=p.id_predmeta --where current_date-datum_ispita<=50000 ; --14 --select indeks, -- ime || ' ' || prezime "ime i prezime", -- substr(ime,1,1) || substr(prezime,1,1) inicijali, -- replace(mesto_rodjenja, 'Beograd', 'Bg') "mesto rodjenja" --from dosije; -- --select indeks, -- ime || ' ' || prezime "ime i prezime", -- concat(substr(ime,1,1),substr(prezime,1,1)) as inicijali, -- replace(mesto_rodjenja, 'Beograd', 'Bg') "mesto rodjenja" --from dosije; --15 --select indeks, ime, prezime, coalesce(mesto_rodjenja, 'Nepoznato') as "mesto rodjenja" --from dosije; --16 --values char(current_time, ISO), char(current_time, USA), char(current_time, EUR); --17 --a --select sifra, naziv, decimal(bodovi*1.200, 6, 2) as uvecanje --from predmet; --b --select sifra, naziv, ceil(bodovi*1.2) as uvecanja --from predmet --where ceil(bodovi*1.2)>8; --18 select substr(indeks,5)|| '/' ||substr(indeks,1,4), naziv, p.id_predmeta from ispit i join predmet p on p.id_predmeta=i.id_predmeta where ocena=10 and not exists (select * from ispit i2 where i2.indeks<>i.indeks and ocena=10 and i.id_predmeta=i2.id_predmeta); --19 select distinct ir.naziv, coalesce(dayname(datum_ispita), 'nije bilo ispita ili je nepoznat datum') from ispitni_rok ir left outer join ispit i on ir.godina_roka=i.godina_roka and ir.oznaka_roka=i.oznaka_roka where ir.godina_roka between 2000 and 2015; --ili (na komplikovaniji nacin) select distinct ir.naziv, coalesce(dayname(datum_ispita), 'nepoznat datum') from ispitni_rok ir join ispit i on ir.godina_roka=i.godina_roka and ir.oznaka_roka=i.oznaka_roka where ir.godina_roka between 2000 and 2015 union select ir.naziv, 'nije bilo ispita' from ispitni_rok ir where ir.godina_roka between 2000 and 2015 and not exists (select * from ispit i where ir.godina_roka=i.godina_roka and ir.oznaka_roka=i.oznaka_roka);