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))
);
seq
, która generuje
dobre unikalne identyfikatory i której można użyć przy wstawianiu do bazy.
Dla każdej góry obliczyć średnią (AVG
) wieku
wszystkich wspinaczy, którzy ją zdobyli. Liczy się wiek
wspinacza w momencie zdobywania góry. Należy policzyć
każdego wspinacza tyle razy ile razy zdobył daną
górę. Należy uwzględnić także w ogóle niezdobyte góry.
Wynikowa tabela powinna mieć dwie kolumny: nazwa góry oraz
śrdnia wieku.
Dla każdego wspinacza wypisać najwyższy szczyt, który udało mu się zdobyć. Uwzględnić wspinaczy, którzy nic nie zdobyli. Wynikowa tabela powinna mieć 4 kolumny: imie i nazwisko wspinacza oraz nazwa i wysokość najwyższego szczytu, który zdobył.
Wypisać góry zdobyte między 2000 i 2005 rokiem. Wynikowa tabela powinna mieć 1 kolumnę zwierającą nazwę góry. Każda góra powinna wystąpić dokładnie jeden raz w wyniku.
Wypisać góry zdobyte przez ekspedycje, których szefem był Lesze Cichy. Wynikowa tabela powinna mieć 1 kolumnę zwierającą nazwę góry.
Wypisać wspinaczy, którzy zdobyli jakiś ośmiotysięcznik między 1990 i 2000 rokiem. Wynikowa tabela powinna mieć 2 kolumny: imię i nazwisko wspinacza.
Dla góry Broad Peak (wysokość: 8067 m. n.p.m., kraj: Chiny) wypisać wypisać ile razy była ona zdobywana w poszczególnych latach. Wypisać tylko te lata, w których była zdobyta co najmniej raz. Wynikowa tabela powinna mieć 2 kolumny: rok oraz liczba wejść w tym roku.
Wypisać góry zdobyte przez Kingę Baranowską ale nie zdobyte przez Roberta Szymczaka. Każdą górę wypisać dokładnie raz. Wynikowa tabela powinna mieć 1 kolumnę: nazwę góry.
Dla każdej góry wypisać jej pierwszego zdobywcę (dowolnego jeśli jest ich więcej). Wynikowa tabela powinna mieć 3 kolumny: nazwa góry oraz imię i nazwisko pierwszego zdobywcy.
Wprowadzić do bazy nowego wspinacza: Artur Hajzer urodzony w 1962r.
Wprowadzić do bazy nową górę: Ama Dablam o wysokości 6826 m. n.p.m. położoną w Nepalu.
Wprowadzić do bazy nową ekspedycję, która odbyła się w 2007 roku, celem było zdobycie szczytu Nanga Parbat (wysokość: 8125 m. n.p.m., kraj: Pakistan), a uczestnikami byli: Piotr Morawski, Peter Hamor oraz Dodo Kopold. Szefem był Piotr Morawski.