Klasówka z SQLa 2019/2020, wersja A (godz. 12:15 - 13:45)
Tabele i dane
Wersja na bazę Oracle |
Wersja na bazę Postgres
W tabeli zadnie są informacje o zadaniach składających się na
poszczególne projekty, natomiast w tabeli zalezy
przechowywane są zależności między zadaniami. Zadanie uznajemy za
niezrealizowane, jeśli procent jego realizacji jest mniejszy niż 100.
Zadania
-
Wypisz zadania malejąco wg liczby zadań, od których bezpośrednio
zależą; w przypadku remisów wypisać alfabetycznie wg nazw.
-
Wypisz wszystkie projekty, które trwają dłużej niż łączna liczba
osobodni składających się na nie zadań.
-
Dla każdego projektu wypisz ilu maksymalnie pracowników pracuje
równocześnie nad zadaniami tego projektu.
-
Dla każdego projektu wypisz liczbę niezrealizowanych zadań, które
nie zależą bezposrednio od żadnego niezrealizowanego
zadania.
-
Wypisz zadania malejąco wg liczby zadań, od których zależą (nie
tylko bezpośrednio); w przypadku remisów wypisać alfabetycznie wg
nazw.
-
(*) Dla każdego projektu wypisz minimalny możliwy czas jego
realizacji przy którym da się zapewnić, że każde zadanie jest
rozpoczynane dopiero po ukończeniu wszystkich zadań, od których
zależy. (RECURSIVE WITH się przyda.)
Zasady
-
Na rozwiązanie zadań jest 90 minut.
-
Rozwiązania oddajemy przez moodle'a, każde zadanie oddzielnie, w
pliku o nazwie i.sql, gdzie i jest numerem
zadania; zadania oddane po godzinie 14:00 nie będą oceniane.
-
Można korzystać z dowolnych materiałów dydaktycznych, także z
internetu.
-
Nie można się porozumiewać między sobą, pytania dotyczące treści
należy kierować do prowadzącego.
-
Dane w pliku są jedynie przykładem; zapytania powinny działać dla
dowolnych danych zgodnych z definicją tabel.
-
Wszystkie zadania są punktowane tak samo, w skali 0-4 pkt; za
brzydkie lub nieefektywne sformułowanie zapytania można utracić 1
pkt.
Przykładowe rozwiązania
harmonogram-rozw.sql
Filip Murlak 04-11-2019