db2start -- pokretanje SUBP db2 connect to stud2020 user student using abcdef -- povezivanje na bazu stud2020 db2 set schema da -- postavi shemu na da -- 1. izdvoijiti informacije o svim studentima u bazi db2 describe table dosije -- opisuje tabelu dosije db2 "select indeks, idprogram, ime, prezime, pol, mestorodjenja, idstatus, datupisa, datdiplomiranja from da.dosije" db2 "select * from da.dosije" -- 2. izdvojiti sve brojeve indeksa studenata koji su polagali neki ispit db2 "select indeks from da.ispit" -- ~100k redova(imamo ponavljanje indeksa) db2 "select distinct indeks from da.ispit" -- 2733 rezultata (svaki indeks se pojvaljuje tacno jednom) -- 3. izdvojiti sve parove oznaka roka, ocena iz tabele ispit db2 "select distinct oznakaroka, ocena from da.ispit" -- distinct lepo radi i sa vise kolona -- 4. izdvojiti sve predmete koji nose bar 6 espb db2 "select id from da.predmet where espb >= 6" -- 5. izdvojiti sva uspesna polganja ispita u septembru 4 2019. skolske godine db2 "select * from da.ispit where ocena > 5 and oznakaroka = 'sep4' and skgodina = 2019" -- 6. izdvojiti indeks i datum upisa studenata ciji je indeks veci od 20140000 rezultat -- urediti prema datumu upisa opadajuce db2 "select indeks, datupisa from dosije where indeks > 20140000 order by datupisa desc" -- 7. izdvojiti sve informacije o polaganjima ispita rezultat urediti po indeksu rastuce -- i po datumu polaganja opadajuce db2 "select * from ispit order by indeks asc, datpolaganja desc" -- 8. izdvojiti sve predmete kojima je broj espb izmedju 4 i 6 db2 "select * from predmet where epsb >= 4 and espb <= 6" db2 "select * from predmet where espb between 4 and 6" -- 9. izdvojiti sve predmete kojima broj predmeta nije izmedju 4 i 6 db2 "select * from predmet where espb < 4 or espb > 6" db2 "select * from predmet where not (espb between 4 and 6)" db2 "select * from predmet where espb not between 4 and 6" -- 10. izdvojiti sva polaganja ispita na kojima je student dobio neparnu ocenu db2 "select * from ispit where ocena % 2 = 1" db2 "select * from ispit where ocena = 5 or ocena = 7 or ocena = 9" db2 "select * from ispit where ocena in (5, 7, 9)" -- 11. izdvojiti indeks, ocenu, broj bodova kao i ocenu sracunatu preko broja -- bodova za sva uspesna polaganja ispita db2 "select indeks, ocena, poeni, (poeni - 1) / 10 + 1 from ispit where ocena > 5" db2 "select indeks, ocena, poeni, (poeni - 1) / 10 + 1 as ocena_po_bodovima from ispit where ocena > 5" -------------------------------------------------------------------------------- -- ako upite pisemo u tekstualnom editoru upite pokrecemo na sledeci nacin: -- db2 -tvf putanja_do_fajla -- -t = naredbe su terminirane sa ; -- -v = verbose (ispisuje naredbu koju izvrsava) -- -f = izvrsava naredbe iz fajla -------------------------------------------------------------------------------- SELECT indeks, ocena, poeni (poeni - 1) / 10 + 1 as "OCENA PO BODOVIMA" FROM ispit WHERE ocena > 5; -- 12. izdvojiti sva polaganja na kojima je student dobio ocenu 8 SELECT indeks, ocena, idpredmeta FROM ispit WHERE ocena = 8 AND status = 'o'; -- 13. izdvojiti sve predmete sa nazivom Linearna algebra SELECT * FROM predmet WHERE naziv='Linearna algebra'; -- 14. izdvojiti sve predmete koji u svom imenu imaju slovo a SELECT * FROM predmet WHERE naziv LIKE '%a%'; -- _ <=> . (bilo koji karakter) -- % <=> .* (0 ili vise karaktera) -- 15. izdvojiti imena i prezimena studenata kojima ime ima bar 5 karaktera -- i pocinje na slovo M SELECT ime, prezime FROM predmet WHERE ime LIKE 'M____%'; -- 16. izdvojiti nazive predmeta cije je drugo slovo %, a pretposlednje \ SELECT naziv FROM predmet WHERE naziv LIKE '_\%%\\_'; SELECT naziv FROM predmet WHERE naziv LIKE '_^%%\_' ESCAPE ^; -- 17. izdvojiti sve studente za koje nije poznat datum diplomiranja SELECT * FROM dosije WHERE datdiplomiranja IS NULL; -- 18. navesti korisnika koji trenutno koristi bazu podataka VALUES user; -- 19. navesti trenutno vreme i trenutni timestamp VALUES (current time, current timestamp);