Skip to content
Snippets Groups Projects
Commit 50428f14 authored by SAEZ Theo's avatar SAEZ Theo
Browse files

Ajout de la VIEW NbPlacesOccupéesLiaisons

parent 75ec8dbf
No related branches found
No related tags found
No related merge requests found
/* Vue RéservationsAvecHoraires */ /* Vue RéservationsAvecHoraires */
CREATE VIEW RéservationsAvecHoraires AS CREATE OR REPLACE VIEW RéservationsAvecHoraires AS
SELECT r.NumR, r.NumC, r.NumT, r.VilleD, r.VilleA, r.Nbplaces, e_depart.DateD, e_arrivee.DateA SELECT r.NumR, r.NumC, r.NumT, r.VilleD, r.VilleA, r.Nbplaces, e_depart.DateD, e_arrivee.DateA
FROM Réservations r FROM Réservations r
JOIN Etapes e_depart ON r.NumT = e_depart.NumT AND r.VilleD = e_depart.NomV JOIN Etapes e_depart ON r.NumT = e_depart.NumT AND r.VilleD = e_depart.NomV
...@@ -8,6 +8,7 @@ JOIN Etapes e_arrivee ON r.NumT = e_arrivee.NumT AND r.VilleA = e_arrivee.NomV; ...@@ -8,6 +8,7 @@ JOIN Etapes e_arrivee ON r.NumT = e_arrivee.NumT AND r.VilleA = e_arrivee.NomV;
/* Test de la vue */ /* Test de la vue */
SELECT * FROM RéservationsAvecHoraires; SELECT * FROM RéservationsAvecHoraires;
---
/* Vue NbPlacesRéservéesEtapes */ /* Vue NbPlacesRéservéesEtapes */
CREATE OR REPLACE VIEW NbPlacesRéservéesEtapes AS CREATE OR REPLACE VIEW NbPlacesRéservéesEtapes AS
...@@ -19,18 +20,32 @@ GROUP BY e.NUMT, e.NOMV, e.DATED; ...@@ -19,18 +20,32 @@ GROUP BY e.NUMT, e.NOMV, e.DATED;
/* Test de la vue */ /* Test de la vue */
SELECT * FROM NbPlacesRéservéesEtapes; SELECT * FROM NbPlacesRéservéesEtapes;
---
/* Vue Liaisons */ /* Vue Liaisons */
CREATE OR REPLACE VIEW Liaisons AS CREATE OR REPLACE VIEW Liaisons AS
SELECT e.NOMV, r.VilleA, e.DATED, e.DATED SELECT e1.NUMT, e1.NOMV AS VilleD, e2.NOMV AS VilleA, e1.DATED, e2.DATEA
FROM Etapes e FROM Etapes e1
JOIN Réservations r ON e.NUMT = r.NumT AND e.NOMV = r.VILLED JOIN Etapes e2 ON e1.NumT = e2.NumT
GROUP BY e.NOMV; WHERE e1.NOMV <> e2.NOMV AND e1.DATED < e2.DATEA;
/* Test de la vue */
SELECT * FROM Liaisons;
/*EDIT TABLE ETAPE PRBL DENONCE*/ ---
/* Vue NbPlacesOccupéesLiaisons */
CREATE OR REPLACE VIEW NbPlacesOccupéesLiaisons AS
SELECT l.NUMT, l.VILLED, l.VILLEA, NVL(SUM(NBPlaces.NbPlacesRéservées), 0) AS PlacesOccupées
FROM Liaisons l
JOIN NbPlacesRéservéesEtapes NBPlaces ON NBPlaces.NUMT = l.NUMT AND NBPlaces.NOMV <= l.VILLED
GROUP BY l.NUMT, l.VILLED, l.VILLEA
;
/* Test de la vue */ /* Test de la vue */
SELECT * FROM Liaisons; SELECT * FROM NbPlacesOccupéesLiaisons;
COMMIT; COMMIT;
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment