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

Slides:



Advertisements
Presentazioni simili
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999
Advertisements

Esercizi su ALGEBRA RELAZIONALE
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning
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
rielaborato da Atzeni-etal., Basi di dati, Capitolo 4
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
Condizioni decisionali
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
Integrità referenziale
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
Corso di Basi di Dati Il Linguaggio SQL
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
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
Progettazione logica: Il modello relazionale
SQL, Definizione e interrogazione di basi di dati
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
Join, una difficoltà Impiegato Reparto Rossi A Neri B Bianchi Reparto
Il modello relazionale
Condizioni decisionali
Selezione e Proiezione
Condizioni decisionali
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.3 Selezione - 2

Altri esempi di condizioni ETA’ > 20 ETA’ > 20 AND STIPENDIO < 40 SESSO = “M” OR ETA’ < 50 AND FILIALE = “Milano” 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Selezione: semantica Il risultato contiene le ennuple dell'operando che soddisfano la condizione (cioe’ per le quali la condizione e’ vera) 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Riconsideriamo l’esempio … Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Impiegati che guadagnano più di 50 Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Impiegati Neri Napoli 64 5698 Milano 44 9553 SELStipendio > 50 (Impiegati) 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.3.1 Impiegati che guadagnano più di 50 e lavorano a Milano: esprimi la interrogazione e costruisci il risultato Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Rossi Roma 55 7309 Neri Napoli 64 5698 Neri Milano 64 5998 Milano 44 9553 SELStipendio > 50 AND Filiale = 'Milano' (Impiegati) 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.3.2: Impiegati che hanno il cognome uguale al nome della filiale presso cui lavorano Risposta Impiegati Cognome Filiale Stipendio Matricola Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 44 9553 Milano 44 9553 Neri Milano 64 5998 Rossi Roma 55 7309 Napoli 5698 SEL Cognome = Filiale(Impiegati) 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Selezione con valori nulli Cognome Filiale Età Matricola Neri Milano 45 5998 Rossi Roma 32 7309 Bruni NULL 9553 Impiegati SEL Età > 40 (Impiegati) La condizione atomica è vera solo per valori non nulli, e quindi, in questo caso, non seleziona la terza n-pla 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Un risultato non desiderabile Cognome Filiale Età Matricola Neri Milano 45 5998 Rossi Roma 32 7309 Bruni NULL 9553 Impiegati Domanda 5.3.3 SEL Età>30 (Impiegati)  SEL Età30 (Impiegati) produce come risultato una tabella uguale o diversa da Impiegati? Risposta: Diversa! Perché? Perché le selezioni vengono valutate separatamente e NULL non fa parte del dominio di definizione. 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Altro risultato non desiderabile Cognome Filiale Età Matricola Neri Milano 45 5998 Rossi Roma 32 7309 Bruni NULL 9553 Impiegati Vale anche SEL Età > 30  Età  30 (Impiegati) Impiegati Perché? Perché anche le condizioni atomiche vengono valutate separatamente! 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Soluzione in algebra relazionale e valori nulli SEL Età > 40 (Impiegati) la condizione atomica è vera solo per valori non nulli per riferirsi ai valori nulli esistono forme apposite di condizioni: IS NULL IS NOT NULL 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Valutazione della selezione Introducendo la notazione IS NULL: SEL Età>30 (Persone)  SEL Età30 (Persone)  SEL Età IS NULL (Persone) = SEL Età>30  Età30  Età IS NULL (Persone) Persone 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Domanda 5.3.3 Trovare gli impiegati con piu’ di 40 anni o di cui non si sa l’eta’ Impiegati Cognome Filiale Età Matricola Neri Milano 45 5998 Bruni NULL 9553 Neri Milano 45 5998 Rossi Roma 32 7309 Bruni NULL 9553 Neri Milano 45 5998 Bruni Milano NULL 9553 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Risposta Trovare gli impiegati con piu’ di 40 anni o di cui non si sa l’eta’ Impiegati Cognome Filiale Età Matricola Neri Milano 45 5998 Bruni NULL 9553 Neri Milano 45 5998 Rossi Roma 32 7309 Bruni NULL 9553 Neri Milano 45 5998 Bruni Milano NULL 9553 SEL (Età > 40) OR (Età IS NULL) (Impiegati) 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill

Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill Concetti introdotti L’operatore di selezione con valori nulli 04/2007 Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill