Każde zadanie jest za 5 punktów. Czas 90 minut.
CREATE TABLE Gory (
id INT PRIMARY KEY,
nazwa VARCHAR2(50) NOT NULL,
wysokosc INT NOT NULL,
kraj VARCHAR2(50) NOT NULL,
UNIQUE(nazwa,wysokosc,kraj)
);
CREATE TABLE Wspinacze (
id INT PRIMARY KEY,
imie VARCHAR2(20) NOT NULL,
nazwisko VARCHAR2(20) NOT NULL,
rok_urodzenia INT NOT NULL,
UNIQUE(imie,nazwisko)
);
CREATE TABLE Ekspedycje (
id INT PRIMARY KEY,
rok INT NOT NULL,
gora INT REFERENCES Gory NOT NULL,
UNIQUE(rok,gora)
);
CREATE TABLE UczestnicyEkspedycji (
ekspedycja INT REFERENCES Ekspedycje NOT NULL,
wspinacz INT REFERENCES Wspinacze NOT NULL,
szef INT,
PRIMARY KEY(ekspedycja,wspinacz),
CHECK(szef IN (0,1))
);
Dla każdej góry wypisać jej nazwę, wysokość oraz liczbę wspinaczy, którzy ją zdobyli w 1985 roku. Wyniki uszeregować malejąco względem wysokości góry.
Dla każdego wspinacza wypisać liczbę ekspedycji, w których brał udział. Uwzględnić także tych, którzy nie brali udziału w żadnej ekspedycji.
Wypisać wspinaczy, którzy zdobyli jakąś górę w 1997 roku.
Wypisać wspinaczy, którzy zdobyli jakiś pięciotysięcznik.
Stworzyć nową sekwencję o nazwie seq
, wartości
początkowej 100 i kroku 1. Wykorzystać ją do generowania
unikalnych identyfikatorów w tabelach: Gory
,
Wspinacze
i Ekspedycje
. Można założyć,
że istniejące w tych tabelach identyfikatory wierszy są mniejsze
od 100. Sekwencja seq
będzie wykorzystana również
w zadaniu 6.
Wprowadzić do bazy 4 nowych wspinaczy:
Wprowadzić do bazy inforamacje o górze Annapurna o
wysokości 8091 m. n.p.m. położonej w Nepalu. Użyć
sekwencji seq
.
Wprowadzić do bazy informacje o nowej ekspedycji, która
odbędzie się w 2008 roku. Celem będzie zdobycie szczytu
Annapurna. W ekspedycji będą uczestniczyli czterej dodani
wcześniej wspinacze. Szefem ma zostać Piotr Pustelnik.
Użyć sekwencji seq
.
Wypisać góry zdobyte przed 1990 rokiem.
Wypisać góry zodbyte przez wspinaczy po czterdziestce (tzn. wspinacz w momencie zdobywania góry miał więcej niż 40 lat).
Wypisać nazwy gór, na które Piotr Morawski wszedł razem z Piotrem Pustelnikiem i Piotr Pustelnik był szefem ekspedycji. (Wskazówka: użyć operacji mnogościowych)
Wypisać 3 najwyższe góry zdobyte przez Leszka Cichego przed 1990 rokiem.