Kolokwium z baz danych: Lasy - równowaga ekosystemu
Autor: Krzysztof Stencel.
Struktura bazy danych: las.create, las.drop.
Przykładowe dane: las.insert.
Przykładowe rozwiązanie: las.sol.
Zadanie
Baza zawiera dane o lasach, paśnikach, gatunkach, wystąpieniach gatunków w lasach oraz o pożeraniu jednych gatunków przez inne.
Zakładamy, że wszelkie dane statystyczne dotyczą tej samej jednostki czasu (np. roku).
Rozrodczość i śmiertelność gatunków należy rozumieć w ten sposób, że jeśli na początku roku jest x osobników gatunku,
to na końcu roku postanie ich
max(0, x * (1 - śmiertelność + rozrodczość) - y).
Wartość y to liczba osobników pożartych w tym okresie.
Pożerają wyłącznie osobniki żyjące na początku roku i każdy z nich pożera dokładnie tyle, ile jest zapisane w tabeli
Pożeranie niezależnie od tego, że mógł nie dożyć końca roku (np. ze starości lub zostać pożarty).
Wielkość lasu to łączna wielkość osobników gatunków, które się w nim zmieszczą.
Wielkość paśnika to łączna wielkość osobników gatunków, które można nakarmić karmą z tego paśnika w jednostce czasu.
Napisz następujące zapytania SQL:
- Wypisz listę gatunków i dla każdego z nich łączną liczbę jego osobników we wszystkich lasach oraz las, w którym występuje on najczęściej.
Jeśli jest kilka takich lasów wybierz ten o najmniejszym identyfikatorze.
- Wypisz listę gatunków na dnie łańcucha pokarmowego (tzn. niepożerających nikogo).
- Wypisz listę par gatunków, w których mniejszy zwierz pożera większego.
- Wypisz listę par las-gatunek takich, że w danym lesie dany gatunek nie ma naturalnych wrogów.
- Wypisz listę paśników, przy których mogą się spotkać gatunek pożerany i pożerający, ponieważ oba jedzą karmę z tego paśnika, występują w tym lesie i się pożerają.
- Wypisz listę lasów, których wielkość nie pozwala na pomieszczenie gatunków w nich występujących.
- Wypisz listę par las-gatunek, dla których równowaga ekosystemu jest zaburzona o co najmniej 5%, tzn. w ciągu roku liczba wystąpień tego gatunku w tym lesie spada lub rośnie o co najmniej 5%.
- Wypisz listę lasów, w których brakuje paśników dla występujących tam gatunków.
- Wypisz listę lasów, w których brakuje karmy dla występujących tam gatunków.
- Podaj liczbę łańcuchów pokarmowych o długości dokładnie 2. W takim łańcuchu roślinożerca jest pożerany przez drapieżnika niemającego naturalnych wrogów.
Wypisanie lasu lub gatunku oznacza umieszczenie w wyniki zapytania numeru i nazwy. Wypisanie paśnika oznacza umieszczenie w wyniki zapytania jego numeru.