Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Adam', 'Kowalski', '87654321', 'tel: 6623');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Jan', 'Nowak', '12345678', 'tel: 2312, dzwonić po 18.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Adam', 'Słodowy', '12333678', 'tel: 2212, dzwonić po 23.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Robert', 'Kubica', '12345624', 'tel: 2322, dzwonić po 4.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Marian', 'Paździoch', '12369698', 'tel: 2172, nie dzwonić po 18.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Tomasz', 'Działowy', '42042069', 'tel: 4202, dzwonić po 16.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Józef', 'Stanin', '69696969', 'tel: 4292, dzwonić po 11.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Janusz', 'Filipiak', '45044329', 'tel: 9009, dzwonić po 17.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Szymon', 'Majewski', '54930293', 'tel: 1102, dzwonić po 18.00');
- INSERT INTO osoby (imie, nazwisko, pesel, kontakt)
- VALUES('Juliusz', 'Cezar', '75932833', 'tel: 4362, dzwonić po 10.00');
- INSERT INTO wycieczki (nazwa, kraj, DATA, opis, liczba_miejsc)
- VALUES ('Wycieczka do Paryza','Francja',TO_DATE('2016-01-01', 'YYYY-MM-DD'),'Ciekawa wycieczka ...',3);
- INSERT INTO wycieczki (nazwa, kraj, DATA, opis, liczba_miejsc)
- VALUES ('Piękny Kraków','Polska',TO_DATE('2017-02-03', 'YYYY-MM-DD'),'Najciekawa wycieczka ...',2);
- INSERT INTO wycieczki (nazwa, kraj, DATA, opis, liczba_miejsc)
- VALUES ('Wieliczka','Polska',TO_DATE('2017-03-03', 'YYYY-MM-DD'),'Zadziwiająca kopalnia ...',2);
- INSERT INTO wycieczki (nazwa, kraj, DATA, opis, liczba_miejsc)
- VALUES ('Szlakami instalacji komunalnych Krakowa','Polska',TO_DATE('2019-03-03', 'YYYY-MM-DD'),'Zadziwiające kanały ...',2);
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (6,14,'N');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (6,15,'P');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (7,11,'P');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (7,13,'P');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (8,15,'N');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (8,14,'P');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (6,16,'N');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (9,15,'P');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (9,14,'N');
- INSERT INTO rezerwacje(id_wycieczki, id_osoby, STATUS)
- VALUES (9,13,'P');
- DELETE FROM OSOBY WHERE ID_OSOBY = 9
- SELECT *
- FROM OSOBY;
- SELECT *
- FROM WYCIECZKI;
- SELECT *
- FROM REZERWACJE;
- DELETE FROM REZERWACJE WHERE 1 = 1
- CREATE VIEW wycieczki_osoby
- AS
- SELECT
- w.ID_WYCIECZKI,
- w.NAZWA,
- w.KRAJ,
- w.DATA,
- o.IMIE,
- o.NAZWISKO,
- r.STATUS
- FROM WYCIECZKI w
- JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
- JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY;
- -- wycieczki_osoby_potwierdzone (kraj,data, nazwa_wycieczki, imie,
- -- nazwisko,status_rezerwacji)
- CREATE VIEW wycieczki_osoby_potwierdzone
- AS
- SELECT
- w.KRAJ,
- w.DATA,
- w.NAZWA,
- o.IMIE,
- o.NAZWISKO,
- r.STATUS
- FROM WYCIECZKI w
- JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
- JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY
- WHERE r.STATUS = 'P' OR r.STATUS = 'Z';
- -- wycieczki_przyszle (kraj,data, nazwa_wycieczki, imie, nazwisko,status_rezerwacji)
- CREATE VIEW wycieczki_przyszle
- AS
- SELECT
- w.KRAJ,
- w.DATA,
- w.NAZWA,
- o.IMIE,
- o.NAZWISKO,
- r.STATUS
- FROM WYCIECZKI w
- JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
- JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY
- WHERE w.DATA > (SELECT CURRENT_DATE FROM dual)
- -- wycieczki_miejsca(kraj,data, nazwa_wycieczki,liczba_miejsc, liczba_wolnych_miejsc)
- CREATE VIEW wycieczki_miejsca
- AS
- SELECT
- w.KRAJ,
- w.DATA,
- w.NAZWA,
- w.LICZBA_MIEJSC,
- w.LICZBA_MIEJSC - (SELECT COUNT(*) FROM REZERWACJE r WHERE r.ID_WYCIECZKI = w.ID_WYCIECZKI AND (r.STATUS = 'Z' OR r.STATUS = 'P' OR r.STATUS = 'N')) AS LICZBA_WOLNYCH_MIEJSC
- FROM WYCIECZKI w
- -- dostępne_wyciezki(kraj,data, nazwa_wycieczki,liczba_miejsc, liczba_wolnych_miejsc)
- CREATE VIEW dostepne_wycieczki
- AS
- SELECT
- w.KRAJ,
- w.DATA,
- w.NAZWA,
- w.LICZBA_MIEJSC,
- w.LICZBA_WOLNYCH_MIEJSC
- FROM wycieczki_miejsca w
- WHERE w.LICZBA_WOLNYCH_MIEJSC > 0 AND w.DATA > (SELECT CURRENT_DATE FROM dual)
- -- ) rezerwacje_do_ anulowania – lista niepotwierdzonych rezerwacji które powinne zostać
- -- anulowane, rezerwacje przygotowywane są do anulowania na tydzień przed wyjazdem)
- CREATE VIEW rezerwacje_do_anulowania
- AS
- SELECT
- w.KRAJ,
- w.DATA,
- w.NAZWA,
- o.IMIE,
- o.NAZWISKO,
- r.STATUS
- FROM WYCIECZKI w
- JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
- JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY
- WHERE r.STATUS = 'N' AND w.DATA -7 >= (sysdate ) ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement