You are on page 1of 6

Upiti 5

1. Приказати укупан фонд часова у сваком од четири разреда.


select razred, sum(fond) as fond_casova
from predmet
group by razred
2. Приказати најмању оцену из сваког предмета.
select id_predmet, min(ocena) as najmanja_ocena
from ocena
group by id_predmet
3. Приказати број ученика у сваком од одељења.
select razred, odeljenje, count(*) as broj_ucenika
from ucenik
group by razred, odeljenje
4. Приказати број девојчица у сваком разреду.
select razred, count(*) as broj_devojcica
from ucenik
where pol="ж"
group by razred
5. Приказати три најчешћа презимена.
select prezime, count(*) as broj_prezimena
from ucenik
group by prezime
order by broj_prezimena desc
limit 3
6. Прикажи укупан број изостанака за сваки статус изостанака (оправдане, неоправдане,
нерегулисане).
select status, count(*) as broj_izostanaka
from izostanak
group by status

7. Прикажи највећи фонд часова неког предмета за сваки од разреда (приказати редни број
разреда и максимални фонд у колони под називом najveci_fond).
select razred, naziv, max(fond) as najveci_fond
from predmet
group by razred

8. Прикажи три датума у којима је остварено највише изостанака (уз датум приказати и број
изостанака у колони под називом broj_izostanaka).
select datum, count(*) as broj_izostanaka
from izostanak
group by datum
order by broj_izostanaka desc
limit 3
Upiti 6

1. Приказати одељења у којима има више од 30 ученика.


select razred, odeljenje, count(*) as broj_ucenika
from ucenik
group by razred, odeljenje
having broj_ucenika>=30

2. Приказати одељења у којима има више од 20 девојчица.


select razred, odeljenje, count(*) as broj_devojcica
from ucenik
where pol="ж"
group by razred, odeljenje
having broj_devojcica>20

3. За свако женско име које носи више ученица приказати број ученица које носе то име
(резултат сортирати опадајуће по броју ученица).
select ime, count(*) as broj_imena
from ucenik
where pol="ж"
group by ime
having broj_imena>=2
order by broj_imena desc

4. Прикажи сва одељења четвртог разреда у којима има бар четири ученика рођена 2004.
године.
select razred, odeljenje, count(*) as broj_rodjenih
from ucenik
where razred=4 and strftime(“%Y”, datum_rodjenja) = “2004”
group by razred, odeljenje
having broj_rodjenih>=4

5. Приказати све датуме за које постоје бар два нерегулисана изостанка (уз датум приказати и
број нерегулисаних изостанака).
select datum, count(*) as broj_neregulisanih
from izostanak
where status="нерегулисан"
group by datum
having broj_neregulisanih>=2

6. Прикажи сва одељења четвртог разреда у којима има бар 15 дечака (приказати само
разред и одељење).
select razred, odeljenje
from ucenik
where razred=4 and pol="м"
group by odeljenje
having count(*)>=15
1. Приказати укупан број оправданих изостанака које је направио ученик са
идентификатором 1 (колону назвати broj_izostanaka).
select count(*) as broj_izostanaka
from izostanak
where status="оправдан" and id_ucenik=1

2. Приказати просечну оцену, заокружену на две децимале, на писменом задатку из


математике у првом разреду одржаном 15. октобра 2020. године (математика у
првом разреду има идентификатор 1).
select round(avg(ocena),2) as prosek
from ocena
where id_predmet=1 and vrsta="писмени задатак" and datum="2020-10-15"

3. За сваки датум у ком је направљен неки изостанак одредити укупан број


направљених изостанака (колону назвати broj_izostanaka).
select datum, count(*) as broj_izostanaka
from izostanak
group by datum

4. За сваки статус изостанака (оправдани, неоправдани, нерегулисани) одредити број


таквих изостанака у мају 2021. године.
select status, count(*) as broj_izostanaka
from izostanak
where datum between "2021-05-01" and "2021-05-31"
group by status

5. За сваки статус изостанака одреди први и последњи датум када је такав изостанак
направљен (колоне назвати prvi и poslednji).
select status, min(datum) as prvi, max(datum) as poslednji
from izostanak
group by status

6. За сваки месец приказати број ученика рођених у том месецу (колоне


назвати mesec и broj).
select strftime("%m",datum_rodjenja) as mesec, count(*) as broj
from ucenik
group by strftime("%m",datum_rodjenja)
7. За сваки месец у години y ком је неки ученик добио неку јединицу - приказати број
јединица које су ученици добили током тог месеца (колоне назвати mesec и broj).
select strftime("%m",datum) as mesec, count(*) as broj
from ocena
where ocena=1
group by strftime("%m",datum)

8. Прикажи датуме у којима има неоправданих изостанака, али да је то строго мање од


10 (уз сваки датум приказати и број изостанака).
select datum, count(*) as broj
from izostanak
where status="неоправдан"
group by datum
having broj<10

9. Приказати све називе предмета који се предају током неколико разреда (приказати
само називе).
select naziv
from predmet
group by naziv
having count(naziv)>1
1. За сваки изостанак начињен 14. маја 2021. године, приказати име и презиме ученика,
редни број часа и статус изостанка.

select u.ime, u.prezime, i.cas, i.status


from ucenik u
join izostanak i on i.id_ucenik=u.id
where datum="2021-05-14"

You might also like