Esame: base di dati, schema entità - relazione, modello relazionale, quere SQL...

Collapse
X
 
  • Filter
  • Ora
  • Show
Clear All
new posts
  • BigPaschi
    SOLIDUS
    • Apr 2008
    • 12834
    • 976
    • 1,208
    • Castrovillari
    • Send PM

    Esame: base di dati, schema entità - relazione, modello relazionale, quere SQL...

    Devo fare quest'esame...

    qualcuno di voi ha studiato roba simile?

    me la cavo abbastanza per quanto riguarda lo schema entità relazione... ed anche per quanto riguarda il modello relazionale da ricavare poi a seconda dello schema e-r .... ma per quanto riguarda le query sql.... sono proprio a zero...

    riesco a fare soltanto le interrogazioni più semplici....

    ecco un esempio

    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à)

    1- Il nome di tutte le sale di Pisa

    SELECT s.Nome
    FROM Sale s
    WHERE s.Città = 'Pisa'

    ecco... questa mi viene molto facile... ma quando si tratta di fare le congiunzioni con chiave primaria e chiave esterna ... sto a zero... qualcuno che sappia spiegare in parole semplici cosa si fa?

    ecco un esempio di quere che non riuscirei proprio a fare

    Modello relazionale .... in grassetto le chiavi primarie

    Aereo ( codiceaereo, marca, modello, num_posti)
    Passeggero ( cf, nome, cognome, telefono, citta_nascita, citta_residenza, data_nascita)
    Prenotazione (codice_prenotazione, cf_passeggero, codice_volo, posto)
    Volo (codice_volo, codice_aereo, data, ora, aereo_partenza, aereo_destinazione)
    Aereoporto (codice, citta)

    esercizio: Vogliamo selezionare tutti i passeggeri che hanno prenotato un volo per Barcellona

    soluzione:

    Select: Nome, Cognome
    From: Passeggero, Prenotazione AS P, Volo AS V, Aereoporto
    Where: CF_passeggero= CF AND
    V.Codice_volo= P.Codice_volo AND
    V.Aereoporto_destinazione= codice AND
    Citta Like "Barcellona"

    ecco... in questo caso... ci sono le varie congiunzioni tra chiave primaria e chiave esterna... tra le diverse tabelle... ma non riesco a capire
    Last edited by BigPaschi; 12-02-2013, 15:02:12.

  • Otaku90
    Bodyweb Advanced
    • Jul 2010
    • 1171
    • 42
    • 16
    • Send PM

    #2
    Ciao, sono un po arrugginito sulle query (non quere ) perchè le ho fatte alle superiori ed ormai è passato qualche anno...
    Comunque il tuo dubbio è molto semplice.
    Vediamo se riesco a spiegarmi nel modo più semplice e comprensibile.

    Nel primo esempio che hai postato tu avevi bisogno di estrarre il nome delle sale che si trovano a Pisa. Tutti e due i dati si trovano nella tabella "sale", perciò non c'è nessun bisogno di collegare altre tabelle.
    Nel secondo caso invece devi tirare fuori i dati presenti nella seconda tabella in relazione ad un altro dato che si trova nell'ultima tabella. In questo caso perciò devi passare da tabella a tabella fino a che hai tirato dentro tutti i dati che ti permetto di trovare il "risultato". In questo caso la prima tabella (aereo) non viene nemmeno considerata perchè li non c'è nessun dato che ti interessa.
    Nei campi di "volo" hai dimenticato "Aereoporto_destinazione" ?

    Ti faccio un esempio:
    vuoi tirare fuori il "codice dell'aereo" che parte da "barcellona". Le uniche tabelle che ti interessano sono "volo" e "aereoporto" perchè sono collegate tra di loro e contengono i dati che ti servono.
    Se invece a te serve tirare fuori la "marca" degli aerei che partono da "barcellona" avresti dovuto passare per tutte le tabelle, da "aereo" ad "aereoporto".

    Mi sa che mi sono spiegato un po di m*rda però è più facile da capire che da spiegare.
    Last edited by Otaku90; 12-02-2013, 09:23:06.

    Commenta

    • BigPaschi
      SOLIDUS
      • Apr 2008
      • 12834
      • 976
      • 1,208
      • Castrovillari
      • Send PM

      #3
      hai reso l'idea...

      l'esame l'ho fatto ieri... ed un po' l'avevo anche iniziato a capire poi...

      speriamo bene

      Commenta

      • Otaku90
        Bodyweb Advanced
        • Jul 2010
        • 1171
        • 42
        • 16
        • Send PM

        #4
        Ah, allora scusa se sono arrivato in ritardo per la "spiegazione".
        Comunque se capisci il concetto vedi che è una stupidata, poi quando passerai al vero linguaggio sql le cose si complicheranno un attimino, ma nemmeno più di tanto

        Commenta

        • BigPaschi
          SOLIDUS
          • Apr 2008
          • 12834
          • 976
          • 1,208
          • Castrovillari
          • Send PM

          #5
          Esame: base di dati, schema entità - relazione, modello relazionale, quere SQL.

          I risultati escono domani pomeriggio


          Inviato da IPhone 5

          Commenta

          • naoto
            cavaliere prolisso
            • Feb 2005
            • 5375
            • 970
            • 529
            • roma
            • Send PM

            #6
            Peccato l'ho visto solo ora. In bocca al lupo.

            Domanda: ma potevi usare anche le join?
            Lonely roses slowly wither and die

            Commenta

            • BigPaschi
              SOLIDUS
              • Apr 2008
              • 12834
              • 976
              • 1,208
              • Castrovillari
              • Send PM

              #7
              Esame: base di dati, schema entità - relazione, modello relazionale, quere SQL.

              Si anche le join...

              Comunque esame superato... Addirittura ho preso il miglior voto... 26

              Ci sono stati molti bocciati ... Ho fatto alcuni errori proprio al terzo esercizio che riguardava le query.. Dove infatti ho preso solo la sufficienza .. Mentre i primi due sono andati benissimo (schema e/r e modello relazionale)

              Meno male che è filato tutto liscio😉




              Inviato da IPhone 5

              Commenta

              • naoto
                cavaliere prolisso
                • Feb 2005
                • 5375
                • 970
                • 529
                • roma
                • Send PM

                #8
                Grande.
                Lonely roses slowly wither and die

                Commenta

                • Giammy
                  Bodyweb Advanced
                  • Aug 2010
                  • 237
                  • 56
                  • 45
                  • SUD
                  • Send PM

                  #9
                  R: Esame: base di dati, schema entità - relazione, modello relazionale, quere SQL...

                  Cristo pure su bw nooooo....devo dare una schifosissima informatica da 3 crediti il 19 e ci sto uscendo pazzo con ste cose


                  Inviato dal mio GT-I9300 con Tapatalk 2
                  "Che il cibo sia la tua medicina, la medicina sia il tuo cibo" (Ippocrate)

                  Commenta

                  Working...
                  X