You are on page 1of 4

Vebe 1

1. Izdvojiti nazive ispitnih rokova.

ispitni_rok[naziv]
2. Izdvojiti podatke o studentima sa imenom Milo.

dosije where ime=Milos


3. Izdvojiti ime i prezime studenta i nazive predmeta koje je poloio.

(dosije join (ispit where ocena>5) join predmet) [ime, prezime, naziv]
ili
((dosije times (ispit where ocena>5) times predmet) where dosije.indeks=ispit.indeks
and ispit.id_predmeta=predmet.id_predmeta) [dosije.ime, dosije.prezime, dosije. naziv]
4. Pronai nazive predmeta koji imaju po 6 kredita i koje je polagao student sa indeksom
21/2010.
((ispit where indeks=20100021) join (predmet where krediti=6))[naziv]
5. Pronai nazive predmeta koji imaju manje kredita od predmeta Geometrija.
define alias p1 for predmet
define alias p2 for predmet
((p1 times p2) where p1.naziv=Geometrija and p1.krediti>p2.krediti)[p2.naziv]
6. Pronai studente koji nemaju poloen nijedan ispit.
dosije[indeks]
minus
(ispit where ocena>5)[indeks]
7. Pronai ifru i naziv predmeta koji su poloili svi studenti roeni 1992. godine.

(((ispit where ocena>5)[id_predmeta, indeks]


divideby
(dosije where god_rodjenja=1992)[indeks])
join predmet)[sifra, naziv]
8. Pronai indekse studenata koji su roeni 1992. godine ili imaju bar jednu ocenu 10
(dosije where god_rodjenja=1992)[indeks]
union
(ispit where ocena=10)[indeks]
9. Za svaki predmet prikazati koliko studenata ga je poloilo i prosenu ocenu za taj
predmet. Izdvojiti id predmeta, broj studenata koji su ga poloili i prosenu ocenu.
summarize (ispit where ocena>5) per ispit[id_predmeta] add (count as koliko, avg(ocena)
as prosek)
10. Izdvojiti podatke iz tabele ISPIT i za svaki ispit (u novoj koloni) ispisati da li je poloen
ili ne. (upustvo: koristiti EXTEND i UNION).
extend (ispit where ocena>5) add 'da' as polozen
union
extend (ispit where ocena=5) add 'ne' as polozen

Vebe 2
1. Izdvojiti nazive predmetima iji je broj kredita izmeu 5 i 10.
relaciona algebra
predmet where krediti>=5 and krediti<=10
relacioni raun
range of px is predmet
px.*
where krediti>=5 and krediti<=10
2. Izdvojiti indeks i naziv predmeta, takve da je student polagao predmet i da je dobio ocenu
koja je jednaka broju kredita predmeta.
2

relaciona algebra
(ispit join predmet where ocena=krediti)[ispit.indeks, predmet.naziv]
relacioni raun
range of px is predmet
range of ix is ispit
ix.indeks, px.naziv
where ix.id_predmeta=px.id_predmeta and ix.ocena=px.krediti
3. Pronai studente koji su u januarskom ispitnom roku 2010. godine dobili ocenu 9 ili 10.
Izdvojiti indeks, ime i prezime studenta, naziv predmeta i ocenu.
relaciona algebra
((ispit where godina_roka=2010 and oznaka_roka=jan and (ocena=9 or ocena=10)) join
dosije join predmet)[indeks, ime, prezime, naziv, ocena]
relacioni raun
range of dx is dosije
range of px is predmet
range of ix is ispit
dx.indeks, dx.ime, dx.prezime, px.naziv, ix.ocena
where dx.indeks=ix.indeks and ix.id_predmeta=px.id_predmeta and
ix.godina_roka=2010 and ix.oznaka_roka=jan and (ix.ocena=9 or ix.ocena=10)
4. Pronai indekse studenata koji nisu polagali Analizu 2.
relaciona algebra
dosije[indeks]
minus
(ispit join (predmet where naziv=Analiza 2))[indeks]
relacioni raun
range of dx is dosije
3

range of ix is ispit
range of px is predmet
dx.indeks
where not exists ix(ix.indeks=dx.indeks and exists px(px.id_predmeta=ix.id_predmeta
and px.naziv=Analiza 2))
5. Izdvojiti nazive predmeta koje su poloili svi studenti koji su upisali fakultet 2010.
godine.
relaciona algebra
((predmet[id_predmeta, naziv] join (ispit where ocena>5)[id_predmeta, indeks])
divideby
(dosije where indeks> 20100000 and indeks<20110000 )[indeks])[naziv]
relacioni raun
range of dx is dosije
range of px is predmet
range of ix is ispit
px.naziv
where forall dx(if dx.indeks>20100000 and dx.indeks<20110000 then exists ix(
ix.indeks=dx.indeks and ix.ocena>5 and ix.id_predmeta=px.id_predmeta))
6. Izdvojiti nazive predmeta koje su studenti roeni u aku poloili u aprilu 2010.
relaciona algebra
(((dosije where mesto_rodjenja=Cacak)[indeks] join (ispit where oznaka_roka=apr
and godina_roka=2010 and ocena>5)[indeks, id_predmeta]) join predmet)[naziv]
relacioni raun
range of dx is dosije
range of px is predmet
range of ix is ispit
px.naziv
where exists ix(ix.id_predmeta=px.id_predmeta and ix.ocena>5 and oznaka_roka=apr
and godina_roka=2010 and exists dx(dx.indeks=ix.indeks and
dx.mesto_rodjenja=Cacak))
4

You might also like