|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2008
Messaggi: 249
|
[MySQL] Differenze tra query
Salve,
ho questo schema relazionale: ATTORI (CodAttore, Nome, AnnoNascita, Nazionalità); RECITA (CodAttore*, CodFilm*) FILM (CodFilm, Titolo, AnnoProduzione, Nazionalità, Regista, Genere) PROIEZIONI (CodProiezione, CodFilm*, CodSala*, Incasso, DataProiezione) SALE (CodSala, Posti, Nome, Città) N.B. gli asterischi indicano le chiavi esterne Devo effettuare la seguente query: I titoli dei film che non sono mai stati proiettati a Pisa Avendo 3 soluzioni non riesco a capire la differenza tra queste 1) select f.Titolo from film as f join proiezioni as p on (f.CodFilm = p.CodFilm) join sale as s on (p.CodSala = s.CodSala) where s.Citta <> 'Pisa' 2) SELECT f.Titolo FROM Film f WHERE not exists (SELECT * FROM Proiezioni p, Sala s WHERE s.Città=”Pisa” and f.CodFilm=p.CodFilm and p.CodSala =s.CodSala) 3) SELECT f.Titolo FROM Film f WHERE “Pisa” not in (SELECT s.Città FROM Proiezioni p, Sala s WHERE f.CodFilm = p.CodFilm and p.CodSala =s.CodS) mi aiutereste a capire la differenza tra la prima e le restanti due? Sono la stessa cosa? |
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Nov 2008
Messaggi: 249
|
grazie per la risposta... Le Altre due quindi sono giuste?
Come potrei capire la differenza schematicamente? Perche eliminando le proiezioni che sono state fatte a Pisa, non sto eliminando appunto quelle che non sono mai state fatte a pisa? |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:37.



















