Advertisement
Guest User

Untitled

a guest
Aug 25th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 1.27 KB | None | 0 0
  1. CREATE OR REPLACE VIEW EsordiReflusso AS
  2. SELECT  E.Paziente, YEAR(E.DataEsordio)-YEAR(P.DataNascita) AS Eta, E.DataEsordio
  3. FROM    esordio E INNER JOIN paziente P ON E.Paziente = P.CodFiscale
  4. WHERE   E.Patologia = 'Reflusso gastroesofageo'
  5.         AND YEAR(E.DataEsordio) = 2008;--  YEAR(CURRENT_DATE)-10;
  6.  
  7. CREATE OR REPLACE VIEW MeseCasi AS
  8. SELECT  D.Mese, IF(MONTH(ER.DataEsordio) IS NULL, 0, COUNT(*)) AS NumCasi, AVG(E.Eta) AS Media
  9. FROM    EsordiReflusso ER
  10.         RIGHT OUTER JOIN
  11.         ( -- tutti i mesi
  12.             SELECT  MONTH(E.DataEsordio) AS Mese
  13.             FROM esordio E
  14.             GROUP BY MONTH(E.DataEsordio)
  15.         ) AS D ON MONTH(ER.DataEsordio) = D.Mese
  16.         LEFT OUTER JOIN
  17.         EsordiReflusso E ON D.Mese = MONTH(E.DataEsordio)
  18. GROUP BY D.Mese
  19. ORDER BY D.Mese;
  20.  
  21. CREATE OR REPLACE VIEW MesiPiuCasi AS
  22. SELECT  MC.Mese, MC.NumCasi
  23. FROM    MeseCasi MC
  24. WHERE   MC.NumCasi >= ALL (
  25.                     SELECT  MC2.NumCasi
  26.                     FROM    MeseCasi MC2
  27.                     )
  28. GROUP BY MC.Mese;
  29.  
  30. SELECT  IF(MPC.Mese IS NULL,MC.Mese, MPC.Mese) AS Mese,
  31.         IF(MC.NumCasi = 0, NULL, MC.NumCasi) AS NumeroCasi,
  32.         MC.Media AS EtaMediaPrec
  33. FROM    MeseCasi MC
  34.         NATURAL LEFT OUTER JOIN
  35.         MesiPiuCasi MPC
  36. WHERE   (MPC.Mese IS NULL AND MC.NumCasi = 0)
  37.             OR (MC.NumCasi = MPC.NumCasi)
  38. GROUP BY MC.Mese
  39. ORDER BY MC.Mese;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement