Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE VIEW wycieczki_osoby_potwierdzone
  2.   AS
  3.     SELECT
  4.       w.ID_WYCIECZKI,
  5.       w.NAZWA,
  6.       w.KRAJ,
  7.       w.DATA,
  8.       o.IMIE,
  9.       o.NAZWISKO,
  10.       r.STATUS
  11.     FROM WYCIECZKI w
  12.       JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
  13.       JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY
  14.     WHERE r.STATUS = 'P' OR r.STATUS = 'Z';
  15.  
  16. CREATE VIEW wycieczki_przyszle
  17.   AS
  18.     SELECT
  19.       w.ID_WYCIECZKI,
  20.       w.NAZWA,
  21.       w.KRAJ,
  22.       w.DATA,
  23.       o.IMIE,
  24.       o.NAZWISKO,
  25.       r.STATUS
  26.     FROM WYCIECZKI w
  27.       JOIN REZERWACJE r ON w.ID_WYCIECZKI = r.ID_WYCIECZKI
  28.       JOIN OSOBY o ON r.ID_OSOBY = o.ID_OSOBY
  29.     WHERE w.DATA > CURRENT_DATE ;
  30.  
  31. CREATE VIEW wycieczki_miejsca
  32. AS
  33. SELECT w.ID_WYCIECZKI,
  34.        w.NAZWA,
  35.        w.KRAJ,
  36.        w.DATA,
  37.        w.LICZBA_MIEJSC,
  38.        w.LICZBA_MIEJSC - (SELECT COUNT(*)
  39.                           FROM REZERWACJE r
  40.                           WHERE r.STATUS != 'A'
  41.                             AND r.ID_WYCIECZKI = w.ID_WYCIECZKI) LICZBA_WOLNYCH_MIEJSC
  42. FROM WYCIECZKI w;
  43.  
  44. CREATE VIEW dostepne_wycieczki
  45. AS
  46.     SELECT ID_WYCIECZKI,
  47.            NAZWA,
  48.            KRAJ,
  49.            DATA,
  50.            LICZBA_MIEJSC,
  51.            LICZBA_WOLNYCH_MIEJSC
  52. FROM wycieczki_miejsca
  53. WHERE LICZBA_WOLNYCH_MIEJSC > 0 AND
  54.       DATA > CURRENT_DATE;
  55.  
  56. CREATE VIEW rezerwacje_do_anulowania
  57. AS
  58.     SELECT r.NR_REZERWACJI,
  59.            w.ID_WYCIECZKI,
  60.            w.NAZWA,
  61.            r.STATUS,
  62.            w.DATA
  63. FROM REZERWACJE r
  64.         JOIN WYCIECZKI w ON r.ID_WYCIECZKI = w.ID_WYCIECZKI
  65. WHERE r.STATUS != 'Z' AND r.STATUS != 'P'
  66.     AND w.DATA + 7 < CURRENT_DATE;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement