Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C

Slides:



Advertisements
Presentazioni simili
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Advertisements

Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rileaborato da M. Lenzerini - Basi di dati
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Le operazioni relazionali
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Interrogazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Le operazioni relazionali (continua)
Atzeni-Ceri-Paraboschi-Torlone, Basi di dati, Capitolo 3
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
A. A – 2008 Basi di dati 1 Corso Prof
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Progettazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di Dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Interrogazione di una base di dati relazionale
Corso di Basi di Dati Il Linguaggio SQL
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Interrogazione di una base di dati relazionale
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Il modello relazionale
Rielaborato da Atzeni et al., Basi di Dati, Mc-Graw Hill
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Partizionamento/accorpamento di concetti
Dino Pedreschi Dipartimento di Informatica a.a. 2011– 2012
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
SQL per la modifica di basi di dati
Modello Relazionale Proposto agli inizi degli anni ‘70 da Codd
Dipendenze funzionali
Join, una difficoltà Impiegato Reparto Rossi A Neri B Bianchi Reparto
Il modello relazionale
Selezione e Proiezione
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Vincoli di Integrità Non tutte le combinazioni possibili di valori dei domini su cui è definita una relazione sono accettabili. Alcuni attributi possono.
Transcript della presentazione:

Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C. Batini 5. Algebra Relazionale 5.4 Proiezione

Un limite dell’operatore di selezione Non permette di selezionare nell’output un sottoinsieme degli attributi delle relazioni. Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Un nuovo operatore, la proiezione, risolve una esigenza del tipo per tutti gli impiegati voglio: matricola e cognome, oppure cognome e filiale Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Selezione e proiezione operatori "ortogonali" selezione: decomposizione orizzontale proiezione: decomposizione verticale Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Selezione Proiezione Effetto degli operatori di Selezione e Proiezione Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Proiezione Operatore monadico Produce una relazione risultato: Definito su una parte degli attributi dell'operando (quelli citati nell’operatore) Che contiene ennuple a cui contribuiscono tutte le n-uple dell'operando Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Proiezione, sintassi e semantica PROJ ListaAttributi (Operando) Semantica Il risultato contiene le n-uple dell'operando ristrette ai soli attributi che compaiono nella ListaAttributi Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.4.1: Trovare matricola e cognome di tutti gli impiegati Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Napoli 55 7309 Rossi Roma 5698 44 9553 PROJ Matricola, Cognome (Impiegati) Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.4.2: Trovare cognome e filiale di tutti gli impiegati Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 5698 44 9553 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Attenzione! Dobbiamo infine eliminare le ennuple ripetute La relazione risultato e’ infatti un insieme, e un insieme non ha elementi uguali Cognome Filiale Stipendio Matricola Neri Milano 64 5998 55 7309 Rossi Roma 5698 44 9553 PROJ Cognome, Filiale (Impiegati) Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Cardinalità delle proiezioni - 1 La cardinalita’ di una relazione e’ il numero delle sue ennuple; si indica con |R| Una relazione risultato di una proiezione: contiene al più tante ennuple quante l'operando può contenerne di meno Impiegati PROJ Cognome (Impiegati) Cognome Filiale Stipendio Matricola Cognome Rossi Neri Rossi Roma 55 7309 Neri Milano 64 5998 Neri Napoli 64 5698 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Cardinalità delle proiezioni - 2 Vale la proprieta’ se X è una superchiave di R, allora PROJX(R) contiene esattamente tante ennuple quante R Domanda 5.4.3: perche’? Risposta Per la definizione di superchiave (ogni valore della superchiave compare una volta sola nella relazione) Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Selezione e proiezione Combinando selezione e proiezione, possiamo estrarre interessanti informazioni da una relazione Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.4.4 Trova Matricola e Cognome degli impiegati che guadagnano più di 50 Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta a Trova matricola e cognome degli impiegati che guadagnano più di 50 Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Neri Napoli 64 5698 Milano 44 9553 PROJMatricola,Cognome ( ) SELStipendio > 50 (Impiegati) Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Limiti dei precedenti operatori I precedenti operatori non permettono di collegare informazioni che si trovano in differenti tabelle. Ad esempio, non permettono di trovare nello schema e istanza accanto i corsi superati come esami da un certo studente. Per fare questo abbiamo bisogno di un nuovo operatore, il Join Matricola Cognome Nome Data di nascita 6554 Rossi Mario 05/12/1978 8765 Neri Paolo 03/11/1976 3456 Maria 01/02/1978 9283 Verdi Luisa 12/11/1979 studenti Codice Titolo Docente 01 Analisi 02 Chimica Bruni 04 corsi Studente Voto Corso 30 24 28 esami 26 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Concetti introdotti Proiezione Cardinalita’ delle proiezioni Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill