Базе података 2/К1 2023 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
 
(Нису приказане 3 међуизмене другог корисника)
Ред 1: Ред 1:
{{tocright}}
{{tocright}}
'''Први колоквијум 2023. године''' је први колоквијум икад, одржан 8. априла 2023. године.
'''Први колоквијум 2023. године''' је први колоквијум од кад је професор Цветановић преузео предмет, одржан 8. априла 2023. године.


== Поставка ==
== Поставка ==
Ред 30: Ред 30:
</math>
</math>
== 2. задатак ==
== 2. задатак ==
{{делимично_решено}}
Написати исказ релационе алгебре који даје шифре програмера који су били ангажовани на свим пословима пројекта са називом "ETФ". Оператор груписања није дозвољен.
Написати исказ релационе алгебре који даје шифре програмера који су били ангажовани на свим пословима пројекта са називом "ETФ". Оператор груписања није дозвољен.
=== Решење ===
=== Решење ===
Ред 38: Ред 37:
\begin{align*}
\begin{align*}
& \text{ProjektiETF} = \Pi_{\text{SifP}} (\sigma_{\text{Naziv}='ETF'} (\text{Projekat})) \\
& \text{ProjektiETF} = \Pi_{\text{SifP}} (\sigma_{\text{Naziv}='ETF'} (\text{Projekat})) \\
& \text{PosloviProjektiETF} = \Pi_{\text{SifJ, SifP}} (\text{Posao} \bowtie \text{ProjektiETF}) \\
& \text{PosloviProjektiETF} = \Pi_{\text{SifJ}} (\text{Posao} \bowtie \text{ProjektiETF}) \\
& \text{AngazmanPreciscen} = \Pi_{\text{SifR, SifJ}} (\text{Angazman}) \\
& \text{AngazmanPreciscen} = \Pi_{\text{SifR, SifJ}} (\text{Angazman}) \\
& \text{AngazmaniNaPoslovimaETF} = \Pi_{\text{SifR, SifJ}} (\text{PosloviProjektiETF} \bowtie \text{AngazmanPreciscen}) \\
& \text{AngazmaniNaPoslovimaETF} = \Pi_{\text{SifR, SifJ}} (\text{PosloviProjektiETF} \bowtie \text{AngazmanPreciscen}) \\
& \text{PosloviETFDeljenje} = \Pi_{\text{SifJ}} (\text{PosloviProjektiETF}) \\
& \text{Rezultat} = {\text{AngazmaniNaPoslovimaETF}} \div {\text{PosloviProjektiETF}}
& \text{Rezultat} = {\text{AngazmaniNaPoslovimaETF}} \div {\text{PosloviETFDeljenje}}
\end{align*}
\end{align*}
</math>
</math>
Ред 56: Ред 54:
SELECT DISTINCT SifR
SELECT DISTINCT SifR
FROM Posao NATURAL JOIN Angazman
FROM Posao NATURAL JOIN Angazman
WHERE BrojPlaniranih > 5 AND BrojPlaniranih < 10
WHERE BrojPlaniranih > 5 AND BrojPlaniranih <= 10
</syntaxhighlight>
</syntaxhighlight>
[[Категорија:Рокови]]
[[Категорија:Рокови]]
[[Категорија:Базе података 2]]
[[Категорија:Базе података 2]]

Тренутна верзија на датум 17. април 2026. у 13:16

Први колоквијум 2023. године је први колоквијум од кад је професор Цветановић преузео предмет, одржан 8. априла 2023. године.

Поставка

Компанија уговара пројекте израде софтвера по наруџбинама клијента. У компанији су запослени програмери и менаџери. У систему се води евиденција о сваком кораку рада (захтевима, развијеном коду, додели посла). За сваки пројекат неког клијента евидентирају се датум креирања, менаџер, као и сви кориснички захтеви. Пре него што пројекат почне он мора бити испланиран (статус I). Имплементација може почети тек након што се пројекат имплементира. Током имплементације, целокупан код који програмери развију се такође евидентира у систему и то тако што се за сваки код евидентира које корисничке захтеве имплементира.

Шема базе:

Klijent (SifК, Naziv, Kontakt)
Radnik (SifR, Ime)
Menadzer (SifR, Iskustvo)
Programer (SifR, Specijalnost)
Projekat (SifP, Naziv, Status, Vrednost, DatumPocetka, BrojProgramera, MaksProgramera, SifK, SifR)
Zahtev (SifZ, Opis, SiP)
Posao (SifJ, DatumPocetka, DatumKraja, BrPlaniranihProgramera, SifP, SifZ)
Angazman (SifA, SifR, SifJ)
Kod (SifK, Kod)
Implementira (SifK, SifZ)

Статус: K, I, Z - креиран, испланиран, завршен.


1. задатак

Написати исказ релационе алгебре који даје шифре менаџера који су били надлежни за више од једног пројекта вредности преко 1000. Оператор груписања није дозвољен.

Решење

2. задатак

Написати исказ релационе алгебре који даје шифре програмера који су били ангажовани на свим пословима пројекта са називом "ETФ". Оператор груписања није дозвољен.

Решење

Решење писано у формату за RelaX алат.

3. задатак

За дати исказ релационе алгебре дати еквивалентат SQL упит:

Решење

SELECT DISTINCT SifR
FROM Posao NATURAL JOIN Angazman
WHERE BrojPlaniranih > 5 AND BrojPlaniranih <= 10