· 8 years ago · Jan 23, 2018, 05:24 PM
1
2CREATE DATABASE LOTNISKO;
3USE LOTNISKO;
4CREATE TABLE IF NOT EXISTS SAMOLOT(NR_SAMOLOTU INTEGER PRIMARY KEY, TYP VARCHAR2(50) NOT NULL, LADOWNOSC INTEGER NOT NULL, DOPUSZCZALNA_MASA_CALKOWITA INTEGER NOT NULL, ZASIEG INTEGER DEFAULT=0, MAX_PASAZEROW INTEGER DEFAULT =0);
5CREATE TABLE IF NOT EXISTS PILOT(ID_PILOTA INTEGER PRIMARY_KEY AUTOINCREMENT, IMIE VARCHAR(50) NOT NULL, NAZWISKO VARCHAR(50) NOT NULL, WIEK INTEGER DEFAULT=21);
6CREATE TABLE IF NOT EXISTS LOT(ID_LOTU INTEGER PRIMARY KEY, DZIEN_LOTU VARCHAR(20) NOT NULL, DATA_LOTU DATE DEFAULT=SYSDATE, SKAD VARCHAR(50) NOT NULL, DOKAD VARCHAR(50) NOT NULL, GODZINA_LOTU TIME DEFAULT=12:00, ID_PILOTA INTEGER FOREIGN KEY REFERENCES PILOT(ID_PILOTA), NR_SAMOLOTU INTEGER FOREIGN KEY REFERENCES SAMOLOT(NR_SAMOLOTU));
7CREATE TABLE IF NOT EXISTS PILOCI_LOTOW(ID_PILOTA INTEGER FOREIGN KEY REFERENCES PILOT(ID_PILOTA), ID_LOTU INTEGER FOREIGN KEY REFERENCES LOT(ID_LOTU));
8CREATE TABLE IF NOT EXISTS PILOCI_SAMOLOTOW(ID_PILOTA INTEGER FOREIGN KEY REFERENCES PILOT(ID_PILOTA), NR_SAMOLOTU INTEGER FOREIGN KEY REFERENCES SAMOLOT(NR_SAMOLOTU);
9
10Zadanie 3
11SELECT * FROM LOT WHERE ID_LOTU=312;
12
13ZADANIE 4
14SELECT COUNT(NR_SAMOLOTU) FROM SAMOLOT WHERE MAX_PASAZEROW>220 AND LADOWNOSC>55
15
16ZADANIE 5
17SELECT P.ID_PILOTA, P.IMIE, P.NAZWISKO, P.WIEK FROM PILOT P
18JOIN PILOCI_LOTOW X ON P.ID_PILOTA=X.ID_PILOTA
19WHERE X.ID_LOTU=732;
20
21ZADANIE 6
22SELECT * FROM SAMOLOT S
23JOIN LOT L ON S.NR_SAMOLOTU=L.NR_SAMOLOTU
24WHERE S.ZASIEG>14000
25AND (DZIEN_LOTU='Sroda' OR DZIEN_LOTU='Wtorek')
26AND SKAD='Chicago'
27AND DOKAD='Los Angeles';
28
29ZADANIE 7
30SELECT COUNT(P.ID_PILOTA) FROM PILOT P, PILOCI_SAMOLOTU X
31JOIN SAMOLOT S ON S.NR_SAMOLOTU=X.NR_SAMOLOTU
32JOIN PILOT PL ON PL.ID_PILOTA=X.ID_PILOTA
33WHERE S.TYP='Airbus A350'
34OR S.TYP='Airbus A380';
35
36ZADANIE 8
37SELECT P.ID_PILOTA, P.IMIE, P.NAZWISKO, P.WIEK
38FROM PILOT P
39JOIN LOT L ON P.ID_PILOTA=L.ID_PILOTA
40JOIN PILOCI_LOTOW X ON P.ID_PILOTA=X.ID_PILOTA
41WHERE L.DATA_LOTU>01.01.2013
42AND (
43SELECT COUNT(P1.ID_PILOTA) FROM PILOT P1, SAMOLOT S1 WHERE S1.TYP='Boeing 747' OR S1.TYP='Boeing 767')>4