Linguaggi per Basi di Dati - 1. Algebra Relazionale. Algebra Relazionale. Linguaggi per Basi di Dati - 2. Operatori Insiemistici.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Linguaggi per Basi di Dati - 1. Algebra Relazionale. Algebra Relazionale. Linguaggi per Basi di Dati - 2. Operatori Insiemistici."

Transcript

1 Linguaggi per Basi di Dati - 1 Università degli Studi di Trieste Corso di Laurea in Informatica D. Gubiani marzo 2008 Distinguiamo due classi di linguaggi per basi di dati : - linguaggi di definizione, o definition data language (DDL), utilizzati per definire gli schemi logici e le autorizzazioni per l accesso - linguaggi di manipolazione dei dati, o data manipulation language (DML), utilizzati per l interrogazione e l aggiornamento delle istanze di basi di dati D. Gubiani 1 D. Gubiani 2 Linguaggi per Basi di Dati - 2 Inoltre, distinguiamo tra - linguaggi dichiarativi, che specificano unicamente le proprietà del risultato (SQL, QBE) - linguaggi procedurali, che specificano le modalità di generazione del risultato (algebra relazionale) È un linguaggio di interrogazione dei dati di tipo procedurale basato su concetti di tipo algebrico L algebra relazionale mette a disposizione un insieme di operatori che agiscono su relazioni producendo relazioni (proprietà di chiusura dell algebra relazionale, che garantisce la composizionalità degli operatori) Dato uno schema di base di dati R, un interrogazione può essere vista come una funzione che, per ogni istanza r R, produce una relazione su un dato insieme di attributi D. Gubiani 3 D. Gubiani 4 Operatori Binarie (o insiemistiche): unione, intersezione (operazione derivata), differenza, prodotto cartesiano Unarie: selezione, proiezione, rinomina Derivate: join (join naturale, theta-join) Le relazioni sono insiemi: l algebra relazionale mette a disposizione gli operatori insiemistici (binari) di base (unione, differenza prodotto cartesiano e intersezione) Ogni operatore riceve in input due relazioni e restituisce in output una relazione (eventualmente vuota) È possibile applicare le operazioni di unione, intersezione e differenza solo a relazioni definite sugli stessi attributi È possibile applicare l operazione di prodotto cartesiano solo a relazioni definite su attributi diversi D. Gubiani 5 D. Gubiani 6

2 Unione Intersezione r 1 r 2 = {t t r 1 t r 2 }. Unione laureati e quadri r 1 r 2 = {t t r 1 t r 2 }. Determinare i laureati che sono anche quadri D. Gubiani 7 D. Gubiani 8 Differenza Prodotto Cartesiano - 1 r 1 r 2 = {t t r 1 t r 2 }. Determinare i laureati che non sono quadri Operazione insiemistica Prende in ingresso due relazioni e restituisce in uscita una relazione che contiene tutte le possibili combinazioni di tuple Intersezione: A B = A - (A - B) D. Gubiani 9 D. Gubiani 10 Prodotto Cartesiano - 2 Prodotto Cartesiano - 3 Cardinalità del risultato del prodotto cartesiano: card(risultato) = card(tabella1) card(tabella2) Possono sorgere conflitti fra i nomi: in tali casi occorre la rinomina degli attributi D. Gubiani 11 D. Gubiani 12

3 Selezione - 1 Sono operatori che prendono in input una relazione (e restituiscono in output una relazione) Due operatori più uno: - selezione - proiezione - rinomina Prende in ingresso una relazione e seleziona il sottoinsieme delle istanze che soddisfano una data condizione Sintassi: σ condizione (r) CONDIZIONI ELEMENTARI: nome attributo operatore confronto nome attributo nome attributo operatore confronto valore costante CONDIZIONI COMPLESSE: si ottengono dalle condizioni elementari utilizzando i connettivi logici D. Gubiani 13 D. Gubiani 14 Selezione - 2 Selezione - 3. Selezionare tutti gli impiegati che afferiscono al dipartimento 4 σ DNO=4 (Impiegato) Grado del risultato della selezione: grado(risultato) = grado(operando) Cardinalità del risultato della selezione: card(risultato) card(operando) Indice di selettività della operazione: indice di selettività = card(risultato) card(operando) D. Gubiani 15 D. Gubiani 16 Proiezione - 1 Proiezione - 2. Determinare matricola, cognome e stipendio di ogni impiegato Prende in ingresso una relazione e restituisce la porzione di tale relazione relativa al sottoinsieme di attributi specificati in input Sintassi: π <listaattributi> (r) π Matricola,Cognome,Stipendio (Impiegato) D. Gubiani 17 D. Gubiani 18

4 Proiezione - 3 Selezione e Proiezione Grado del risultato della proiezione: grado(risultato) grado(operando) - il caso = non è, però, significativo Selezione e proiezione - sono operazioni complementari (ortogonali) - possono essere eseguite in sequenza. π Matricola,Cognome (σ Stipendio>50 (Impiegati)) Cardinalità del risultato della proiezione: card(risultato) card(operando) D. Gubiani 19 D. Gubiani 20 Osservazione Rinomina Può essere utile assegnare un nome alle relazioni intermedie. (vedi testo in precedenza) - r 1 σ Stipendio>50 (Impiegato) - r 2 π Matricola,Cognome (r 1 ) È spesso utile (alle volte necessario) rinominare gli attributi Sintassi: ρ B1...B n A 1...A n (r). r 2 ρ Matr50 Cognome50 Matricola Cognome (π Matricola,Cognome (r 1 )) D. Gubiani 21 D. Gubiani 22 Operatori derivati Join Componendo le operazioni di base, si possono ottenere nuove operazioni (operazioni derivate): - Join - Divisione - Semi-join L operatore di join permette di collegare dati contenuti in relazioni diverse, confrontando i loro valori Esistono due tipi fondamentali di join: - θ-join - Natural-Join D. Gubiani 23 D. Gubiani 24

5 θ-join - 1 θ-join - 2 L operazione di θ-join: combinazione fra prodotto cartesiano e selezione σ cond (r X s) = r cond s dove ogni condizione elementare in cond coinvolge un attributo di R ed un attributo di S D. Gubiani 25 D. Gubiani 26 θ-join ed Equi-Join Natural-Join Sintassi: r condizione join s Assumendo che r R(A 1...A n ) e s S(B 1...B m ), la condizione di join condizione join ha la forma: condizione join cond 1 and...and cond k dove cond i = attr. di R op. confronto attr. di S ; Se cond 1...cond k sono tutte condizioni di uguaglianza, il join è detto Equi-Join Versione dell operazione di Join in cui si confrontano tutti e soli gli attributi con lo stesso nome Sintassi: R S o, equivalentemente, R S D. Gubiani 27 D. Gubiani 28 Osservazioni Semi-Join In genere, nella condizione di join non viene utilizzato il connettivo OR che può essere sostituito dall operazione UNION L operazione di natural-join è ovviamente possibile solo nel caso in cui gli attributi abbiano un nome La relazione vuota è una relazione L operazione di θ-join senza condizioni e l operazione di Natural-Join senza attributi con lo stesso nome degenerano entrambe nel prodotto cartesiano Proiezione del risultato di un Natural-Join sugli attributi di una relazione Sintassi: R S π R (R S) R S π S (R S). Determinare tutti gli impiegati che lavorano ad almeno un progetto r IMPIEGATI LAVORAINPROGETTO con r R(Matricola,Cognome,DNum,Salario) D. Gubiani 29 D. Gubiani 30

6 Divisione - 1 Divisione - 2. Determinare il cognome degli impiegati che lavorano a tutti i progetti cui lavora Rossi Soluzione 1: ROSSI σ cognome=rossi (IMPIEGATI) R PROG ROSSI LAVORAINPROGETTO R P π progetto (R PROG) IMP LAVORAINPROGETTO R P R π cognome (IMP IMPIEGATI) D. Gubiani 31 D. Gubiani 32 Divisione - 3 Soluzione 2: CANDIDATI π matricola (IMPIEGATI) CONDIZIONI CANDIDATI R P NO GOOD CONDIZIONI LAVORAINPROGETTO CANDIDATI CATTIVI π matricola (NO GOOD) R MATR CANDIDATI CANDIDATI CATTIVI R π cognome (R MATR IMPIEGATI) Esiste una serie di operazioni addizionali che non possono essere ricavate dalle operazioni di base: - Funzioni aggregate - Join esterno - Unione esterna D. Gubiani 33 D. Gubiani 34 Funzioni Aggregate - 1 Funzioni Aggregate - 2 Operano su un insieme di dati e restituiscono come risultato un dato aggregato (una relazione contenente un solo valore) Sintassi: F OPERATORE Attributo (r). Determinare il numero di impiegati dell azienda, il loro stipendio medio, lo stipendio massimo e l ammontare complessivo degli stipendi D. Gubiani 35 D. Gubiani 36

7 Funzioni Aggregate - 3 Join Esterno - 1 Si possono usare anche più funzioni aggregate: F SUM salario, AVERAGE salario (IMPIEGATI) Il nome dell attributo del risultato è la combinazione operatore attributo (è possibile la rinomina) Esiste la possibilità di eseguire preliminarmente una partizione delle tuple in modo che la funzione venga eseguita separatamente sugli elementi di ciascuna classe -. Determinare il numero di impiegati per ogni dipartimento R1 DNO F COUNT matricola (IMPIEGATI) Consente di gestire dei casi non coperti dal Join tradizionale Esistono tre tipi di Join esterno: - Destro - Sinistro - Completo D. Gubiani 37 D. Gubiani 38 Join Esterno - 2 Unione Esterna. Determinare il cognome dei dipendenti con eventualmente i progetti a cui lavorano R π Cognome,Progetto (IMPIEGATI left join LAVORAINPROGETTO). Determinare l unione delle relazioni Facoltà(Nome,SSN,Dipartimento,Rank) Studenti(Name,SSN,Dipartimento,Advisor) R FacoltàUnione Esterna Studenti dove R(Nome,SSN,Dipartimento,Rank,Advisor) Realizza l unione fra relazioni non compatibili rispetto all unione Gli attributi non comuni assumono il valore NULL nelle tuple per le quali non hanno un valore D. Gubiani 39 D. Gubiani 40 Equivalenza Dipendente dallo Schema L algebra relazionale permette di formulare espressioni fra loro equivalenti Diversi tipi di equivalenza: - equivalenza dipendente dallo schema - equivalenza assoluta E 1 R E 2 se E 1 (r) = E 2 (r) per ogni r R. π A,B (R 1 ) π A,C (R 2 ) R π A,B,C (R 1 R 2 ) Se e solo se R 1 ed R 2 hanno in comune il solo attributo A D. Gubiani 41 D. Gubiani 42

8 Equivalenza Assoluta (Non Dipendente dallo Schema) Ottimizzazione Algebriche - 1 E 1 E 2 se E 1 R E 2 per ogni R. Per qualsiasi schema R, è facile vedere che π A,B (σ A>0 (R)) σ A>0 (π A,B (R)) L ottimizzazione algebrica ha lo scopo di trovare un espressione che sia equivalente all espressione data e possa essere eseguita in modo più efficiente D. Gubiani 43 D. Gubiani 44 Ottimizzazione Algebriche - 2 Infatti, in fase di esecuzione delle interrogazioni (specificate in SQL) vengono tradotte in algebra relazionale e viene valutato il costo - il costo dell esecuzione di un interrogazione può essere valutato in termini delle dimensioni dei risultati intermedi In presenza di alternative equivalenti viene scelta l espressione con costo minore Le trasformazioni di equivalenza sono operazioni che sostituiscono un espressione con un altra a essa equivalente - interessanti se riducono il costo Alcune trasformazioni: - atomizzazione delle selezioni - idempotenza delle proiezioni - anticipazione della selezione rispetto al join - anticipazione della proiezione rispetto al join D. Gubiani 45 D. Gubiani 46 Atomizzazione delle Selezioni Idempotenza delle Proiezioni Una congiunzione di selezioni può essere sostituita da una sequenza di selezioni atomiche σ F1 F 2 (E) σ F1 (σ F1 (E)) Successive applicazioni permettono di operare su condizioni atomiche Una proiezione può essere trasformata in una sequenza di proiezioni che eliminano i vari attributi in varie fasi π X (E) π X (π X,Y (E)) Nota. E è un espressione definita su un insieme di attributi che contiene X e Y. Nota. E è una qualsiasi espressione. D. Gubiani 47 D. Gubiani 48

9 Anticipazione della Selezione Rispetto al Join Anticipazione della Proiezione Rispetto al Join Anticipazione della selezione rispetto al join (pushing selections down) σ F (E 1 E 2 ) E 1 σ F (E 2 ) Anticipazione della proiezione rispetto al join (pushing projections down) π X1,Y 2 (E 1 E 2 ) E1 π Y2 (E 2 ) Nota. Con E1 è definita su X1, E2 è definita su X2, Y2 X2 e (X1 X2) Y2 (gli attributi di X2 Y2 non sono coinvolti nel join). Nota. Se la condizione F coinvolge solo attributi della sottoespressione E2. Combinata con l idempotenza delle proiezioni, permette di eliminare subito da ciascuna relazione gli attributi che non compaiono nel risultato e non sono coinvolti nel join D. Gubiani 49 D. Gubiani 50 Altre - 1 Altre - 2 Inglobamento di una selezione in un prodotto cartesiano σ F (E 1 E 2 ) E 1 F E 2 Distributività della selezione rispetto all unione σ F (E 1 E 2 ) σ F (E 1 ) σ F (E 2 ) Distributività della selezione rispetto alla differenza σ F (E 1 E 2 ) σ F (E 1 ) σ F (E 2 ) Distributività della proiezione rispetto all unione π X (E 1 E 2 ) π X (E 1 ) π X (E 2 ) Trasformazioni basate sulla corrispondenza tra operatori insiemistici e selezioni complesse: σ F1 F 2 (R) σ F1 (R) σ F2 (R) σ F1 F 2 (R) σ F1 (R) σ F2 (R) σ F1 (R) σ F2 (R) σ F1 (F 2)(R) σ F1 (R) σ F2 (R) Proprietà distributiva del join rispetto all unione E (E 1 E 2 ) (E E 1 ) (E E 2 ) Osservazione. La proiezione non è distributiva rispetto alla differenza. D. Gubiani 51 D. Gubiani Dato lo schema {DIPARTIMENTO(dNumero, dnome, manager), IMPIEGATO(matricola, nome, cognome, dip, stipendio)}, trovare i nomi dei dipartimenti il cui manager guadagna più di euro. Soluzione non ottimizzata: π dnome (σ matricola=manager stipendio>80000 (IMPIEGATO DIPARTIMENTO)) Si può riscrivere come: π dnome (σ matricola=manager (σ stipendio>80000 (IMPIEGATO DIPARTIMENTO))) D. Gubiani 53 D. Gubiani 54

10 - 3 Si può riscrivere come: π dnome (σ stipendio>80000 (IMPIEGATO) matricola=manager DIPARTIMENTO) Si può riscrivere come: π dnome (π matricola (σ stipendio>80000 (IMPIEGATO)) matricola=manager DIPARTIMENTO) D. Gubiani 55

Equivalenza di Espressioni Algebriche

Equivalenza di Espressioni Algebriche Equivalenza di Espressioni Algebriche Basi di dati e sistemi informativi 1 Equivalenza di Espressioni Algebriche Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Equivalenza

Dettagli

Linguaggi per basi di dati e SQL

Linguaggi per basi di dati e SQL Linguaggi per basi di dati e SQL Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento

Dettagli

Linguaggi per basi di dati. Linguaggi per basi di dati e SQL. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione

Linguaggi per basi di dati. Linguaggi per basi di dati e SQL. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione Linguaggi per basi di dati e SQL Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento

Dettagli

Il theta-join, espresso come prodotto cartesiano seguito da una selezione, è il tipo di join operativamente più generale. Infatti:

Il theta-join, espresso come prodotto cartesiano seguito da una selezione, è il tipo di join operativamente più generale. Infatti: Join Per correlare attributi con nome diverso (se cioè X 1 X 2 è vuoto) è possibile fare il theta-join, definito come un prodotto cartesiano seguito da una selezione r 1 F r 2 = F (r 1 r 2 ) dove F è la

Dettagli

Modulo 2 Data Base 3

Modulo 2 Data Base 3 Modulo 2 Data Base 3 Università degli Studi di Salerno Corso di Laurea in Scienze della comunicazione Informatica generale Docente: Angela Peduto A.A. 2004/2005 Proiezione Dati una relazione r(x) e un

Dettagli

Dichiarativi : specificano le proprietà del risultato ("che cosa") Procedurali specificano le modalità di generazione del risultato ("come")

Dichiarativi : specificano le proprietà del risultato (che cosa) Procedurali specificano le modalità di generazione del risultato (come) Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento Linguaggi di interrogazione per

Dettagli

Linguaggi per basi di dati

Linguaggi per basi di dati Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento Linguaggi di interrogazione per

Dettagli

Lezione 6. Algebra e Calcolo Relazionale

Lezione 6. Algebra e Calcolo Relazionale Lezione 6 Algebra e Calcolo Relazionale 1 Sommario Esempio di Applicazione con Database (AZIENDA) Algebra Relazionale Operazioni Relazionali Unarie Operazioni dell Algebra Relazionale dalla teoria degli

Dettagli

Fondamenti di Teoria delle Basi di Dati

Fondamenti di Teoria delle Basi di Dati Fondamenti di Teoria delle Basi di Dati Riccardo Torlone Parte 3: Algebra relazionale Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation

Dettagli

Parte III. L algebra relazionale

Parte III. L algebra relazionale Parte III L algebra relazionale asi di dati - prof. Silvio Salza - a.a. 2014-2015 III - 1 Linguaggi di interrogazione Dichiarativi: specificano le proprietà del risultato ("che cosa") Procedurali: specificano

Dettagli

Parte III L algebra relazionale

Parte III L algebra relazionale Parte III L algebra relazionale asi di dati - prof. Silvio Salza - a.a. 2017-2018 III - 1 Linguaggi di interrogazione Dichiarativi: specificano le proprietà del risultato ("che cosa") Procedurali: specificano

Dettagli

Modulo 2 Data Base 2

Modulo 2 Data Base 2 Modulo 2 Data Base 2 Università degli Studi di Salerno Corso di Laurea in Scienze della comunicazione Informatica generale Docente: Angela Peduto A.A. 2004/2005 Algebra Relazionale Linguaggio procedurale,

Dettagli

Algebra Relazionale.

Algebra Relazionale. Algebra Relazionale c.vallati@iet.unipi.it Sommario Introduzione all algebra relazionale I costrutti principali dell algebra relazionale Esempi Esercitazione Basi di dati Ciclo di vita Finita la fase di

Dettagli

Operatori derivati dagli insiemi. Algebra Relazionale. Unione. Operatori derivati dagli insiemi

Operatori derivati dagli insiemi. Algebra Relazionale. Unione. Operatori derivati dagli insiemi Algebra Relazionale Linguaggio procedurale, cioè le operazioni vengono descritte attraverso la descrizione della sequenza di azioni da compiere per ottenere la soluzione. Operatori: unione intersezione

Dettagli

Corso di Basi di Dati

Corso di Basi di Dati Corso di Basi di Dati L Algebra Relazionale Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ L algebra relazionale è un linguaggio (procedurale) di interrogazione per basi di dati relazionali.

Dettagli

Operatori derivati dagli insiemi. Algebra Relazionale. Unione. Operatori derivati dagli insiemi

Operatori derivati dagli insiemi. Algebra Relazionale. Unione. Operatori derivati dagli insiemi Algebra Relazionale Linguaggio procedurale, cioè le operazioni vengono descritte attraverso la descrizione della sequenza di azioni da compiere per ottenere la soluzione. Operatori: unione intersezione

Dettagli

Equivalenze di espressioni. Equivalenze. Equivalenze. Atomizzazione delle selezioni ( F 2 (E)) Idempotenza delle proiezioni

Equivalenze di espressioni. Equivalenze. Equivalenze. Atomizzazione delle selezioni ( F 2 (E)) Idempotenza delle proiezioni di espressioni Due espressioni sono equivalenti se: E 1 R E 2 se E 1 (r = E 2 (r per ogni istanza r di R (equivalenza dipendente dallo schema E1 E2 se E1 R E2 (equivalenza assoluta per ogni schema R L

Dettagli

Interrogazioni (Query) Esempi. Esempi. Esempi

Interrogazioni (Query) Esempi. Esempi. Esempi Interrogazioni (Query Un interrogazione è una funzione E(r che applicata ad istanze r di una base di dati produce una relazione su un dato insieme di attributi X. Le interrogazioni su uno schema di base

Dettagli

Proiezione. Proiezione. Join. Operatore monadico Produce un risultato che

Proiezione. Proiezione. Join. Operatore monadico Produce un risultato che Proiezione Dati una relazione r(x) e un sottoinsieme Y di X, la proiezione di r su Y si indica con Y ( r ) o PROJ Y ( r ) ed è l insieme di tuple su Y ottenute dalle tuple di r considerando solo i valori

Dettagli

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie:

Tipi di operatori. Gli operatori dell algebra relazionale sono classificabili nelle seguenti categorie: lgebra relazionale Il linguaggio per interrogare ed aggiornare la base di dati fa parte del modello di questi ultimi. Un operazione di aggiornamento può essere vista come una funzione che, data un istanza

Dettagli

Basi di dati. Linguaggi di interrogazione

Basi di dati. Linguaggi di interrogazione Basi di dati Linguaggi di interrogazione Algebra relazionale Definita da Codd (70) Molto utile per imparare a formulare query Insieme minimo di 5 operazioni che danno l'intero potere espressivo del linguaggio

Dettagli

ALGEBRA'RELAZIONALE'

ALGEBRA'RELAZIONALE' ALGEBRA'RELAZIONALE'! 2 Definizioni'! Algebra Relazionale! Insieme di operatori di base del modello relazionale! Espressioni in Algebra relazionale! Sequenza di operazioni in algebra relazionale! Calcolo

Dettagli

Algebra relazionale. Algebra relazionale. Operatori dell algebra relazionale. Operatori dell algebra relazionale. Algebra relazionale.

Algebra relazionale. Algebra relazionale. Operatori dell algebra relazionale. Operatori dell algebra relazionale. Algebra relazionale. Algebra relazionale Algebra relazionale Introduzione Selezione e proiezione Prodotto cartesiano e join Natural join, theta-join e semi-join Outer join Unione e intersezione Differenza e antijoin Divisione

Dettagli

Aggiornamenti e Interrogazioni

Aggiornamenti e Interrogazioni Aggiornamenti e Interrogazioni Aggiornamento: inserimento o modifica di dati (una funzione che, data un istanza di basi di dati ne produce un altra) Interrogazione: estrazione di informazioni (una funzione

Dettagli

Dati una relazione r(x) e un sottoinsieme Y di X, la proiezione di r su Y si indica con

Dati una relazione r(x) e un sottoinsieme Y di X, la proiezione di r su Y si indica con Proiezione Dati una relazione r(x) e un sottoinsieme Y di X, la proiezione di r su Y si indica con Y ( r ) o PROJ Y ( r ) ed è l insieme di tuple su Y ottenute dalle tuple di r considerando solo i valori

Dettagli

Basi di Dati. prof. Letizia Tanca. Linguaggi formali di interrogazione per il Modello Relazionale dei Dati

Basi di Dati. prof. Letizia Tanca. Linguaggi formali di interrogazione per il Modello Relazionale dei Dati Basi di Dati prof. Letizia Tanca Linguaggi formali di interrogazione per il Modello Relazionale dei Dati Linguaggi di interrogazione Ricordiamo: Permettono di trovare un dato basandosi sulle sue proprietà.

Dettagli

Lezione 5. Algebra relazionale

Lezione 5. Algebra relazionale Lezione 5 Algebra relazionale Pag.1 Linguaggi di interrogazione relazionale Linguaggi di interrogazione: permettono la manipolazione e il reperimento di dati da una base di dati Il modello relazionale

Dettagli

Vincoli di Integrità Referenziale

Vincoli di Integrità Referenziale Vincoli di Integrità Referenziale In alcuni casi (corrispondenze fra relazioni) è necessario che i valori degli attributi di una relazione R 1 si trovino anche in attributi corrispondenti di un altra relazione

Dettagli

Algebra Relazionale.

Algebra Relazionale. Algebra Relazionale foglia@iet.unipi.it Sommario Introduzione all algebra relazionale I costrutti principali dell algebra relazionale Esempi Esercitazione Basi di dati Ciclo di vita Finita la fase di progettazione

Dettagli

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor

Interrogare una base di dati: algebra relazionale e SQL. Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Interrogare una base di dati: algebra relazionale e SQL Savino Castagnozzi Giorgio Macauda Michele Meomartino Salvatore Picerno Massimiliano Sartor Contesto didattico Il seguente materiale didattico è

Dettagli

Algebra relazionale: operazioni

Algebra relazionale: operazioni Dipartimento di Elettronica ed ormazione Politecnico di Milano ormatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2011/2012 Algebra relazionale: operazioni Le presenti slide sono tratte dalle slide

Dettagli

Scopo. Informatica. Sistema informativo. Sistema informatico

Scopo. Informatica. Sistema informativo. Sistema informatico BASI DI DATI 1 BASI DI DATI 2 Scopo Informatica Elaborazione di dati: Basi di dati Gestione dell informazione Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione in

Dettagli

Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/13

Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I. Anno accademico 2012/13 Algebra relazionale D O C E N T E P R O F. A L B E R T O B E L U S S I Anno accademico 2012/13 Riepilogo operatori algebra Operatori insiemistici Applicabili SOLO a relazioni con lo stesso schema: BASE

Dettagli

Equivalenza di espressioni. Equivalenze. Equivalenze. Due espressioni sono equivalenti se: Atomizzazione delle selezioni σ F1 F2 (E) σ F1 (σ F2 (E))

Equivalenza di espressioni. Equivalenze. Equivalenze. Due espressioni sono equivalenti se: Atomizzazione delle selezioni σ F1 F2 (E) σ F1 (σ F2 (E)) Equivalenza di espressioni Due espressioni sono equivalenti se: E 1 R E 2 se E 1 (r = E 2 (r per ogni istanza r di R (equivalenza dipendente dallo schema E 1 E 2 se E 1 R E 2 per ogni schema R (equivalenza

Dettagli

Scopo Laboratorio di Informatica

Scopo Laboratorio di Informatica Corso di laurea triennale in Chimica - Laboratorio di Informatica 1 Corso di laurea triennale in Chimica - Laboratorio di Informatica 2 Scopo Laboratorio di Informatica Gestione dell informazione per la

Dettagli

Il modello relazionale

Il modello relazionale Il modello relazionale Studenti Nome Matricola Provincia AnnoNascita Isaia 071523 PI 1982 Rossi 067459 LU 1984 Bianchi 079856 LI 1983 Bonini 075649 PI 1984 Esami Materia Candidato* Data Voto BD 071523

Dettagli

3 Algebra Relazionale

3 Algebra Relazionale Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2016/2017 Tiziana Catarci Ultimo aggiornamento : 22/02/2017 I linguaggi di interrogazione e aggiornamento

Dettagli

Structured Query Language

Structured Query Language IL LINGUAGGIO SQL Structured Query Language Contiene sia il DDL sia il DML, quindi consente di: Definire e creare il database Effettuare l inserimento, la cancellazione, l aggiornamento dei record di un

Dettagli

ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a

ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a 1 ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a. 2014-2015 Algebra Relazionale Linguaggio di interrogazione o query language è un linguaggio tramite il quale è possibile richiedere le informazioni contenute

Dettagli

Linguaggi di interrogazione. linguaggi interrogazione 1

Linguaggi di interrogazione. linguaggi interrogazione 1 Linguaggi di interrogazione linguaggi interrogazione 1 a linguaggi formali Classificazione Algebra relazionale Calcolo relazionale Programmazione logica b linguaggi programmativi SQL: Structured Query

Dettagli

ALGEBRA RELAZIONALE. L algebra relazionale

ALGEBRA RELAZIONALE. L algebra relazionale ALGEBRA RELAZIONALE 2 L algebra relazionale L insieme principale di operazioni per il modello relazionale è l algebra relazionale. Le operazioni dell algebra relazionale consentono all utente di specificare

Dettagli

ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a

ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a ALGEBRA RELAZIONALE (CAPITOLO 3) R. Basili a.a. 2016-2017 ALGEBRA RELAZIONALE Linguaggio di interrogazione o query language è un linguaggio tramite il quale è possibile richiedere informazioni contenute

Dettagli

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Algebra Relazionale. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Algebra Relazionale 1 Linguaggi di interrogazione relazionale Linguaggi di interrogazione: permettono la manipolazione e il reperimento di dati da una base di dati Il modello relazionale supporta LI semplici

Dettagli

Operatori derivati dagli insiemi

Operatori derivati dagli insiemi Operatori derivati dagli insiemi Unione L unione fra due relazioni r 1 e r 2 definite sullo stesso schema X si indica con r 1 r 2 ed è una relazione su X contenente le tuple appartenenti a r 1, a r 2 o

Dettagli

Scopo Informatica. Sistema informativo. Sistema informatico. Gestione dell informazione per le lauree triennali

Scopo Informatica. Sistema informativo. Sistema informatico. Gestione dell informazione per le lauree triennali Scopo Informatica Gestione dell informazione per le lauree triennali LEZIONE 9 Elaborazione di dati: Basi di dati Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione

Dettagli

Informatica II Basi di Dati (07/08) Parte 2. 4 Accesso ai dati di un DB. Accesso ai dati di un DB. Accesso ai dati di un DB

Informatica II Basi di Dati (07/08) Parte 2. 4 Accesso ai dati di un DB. Accesso ai dati di un DB. Accesso ai dati di un DB Informatica II Basi di Dati (07/08) Parte 2 Gianluca Torta Dipartimento di Informatica dell Università di Torino torta@di.unito.it, 0116706782 4 Accesso ai dati di un DB SQL Accesso ai dati di un DB Aggiornamento

Dettagli

QL (Query Language) Alice Pavarani

QL (Query Language) Alice Pavarani QL (Query Language) Alice Pavarani QL Query Language Linguaggio di interrogazione dei dati, permette di: Interrogare la base di dati per estrarre informazioni Elaborare i dati Il risultato di un interrogazione

Dettagli

Informatica. per laurea triennale di area non informatica. 1 Le basi di dati

Informatica. per laurea triennale di area non informatica. 1 Le basi di dati 1 Informatica per laurea triennale di area non informatica LEZIONE 7 - 2 Scopo Gestione dell informazione Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione in diversi

Dettagli

Operatori di base. σ F (r) = {t t r. F(t) = true} SELEZIONE σ F (r)

Operatori di base. σ F (r) = {t t r. F(t) = true} SELEZIONE σ F (r) Algebra relazionale Linguaggio dallo stile operazionale, in quanto rappresenta il piano di esecuzione di una query. Definisce un insieme di operazioni su relazioni. Le operazioni hanno come operandi una

Dettagli

Linguaggi per basi di dati. Interrogazione delle basi di dati. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione

Linguaggi per basi di dati. Interrogazione delle basi di dati. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione Interrogazione delle basi di dati Linguaggi per basi di dati Algebra Relazionale operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione

Dettagli

Basi di dati (database)

Basi di dati (database) Basi di dati (database) 1 Scopo Gestione dell informazione Informazione: difficile da definire ma a tutti è chiara l importanza della sua gestione in diversi tipi di attività Esempi: aziende, banche, anagrafi,

Dettagli

Basi di Dati Spaziali

Basi di Dati Spaziali Corso di Basi di Dati Spaziali Linguaggi: (Geo) Algebra Relazionale Angelo Montanari Donatella Gubiani Linguaggi per basi di dati Si possono distinguere diversi tipi di linguaggi per la gestione dei dati:

Dettagli

Algebra e Calcolo relazionale. Algebra e calcolo relazionale (parte 1)

Algebra e Calcolo relazionale. Algebra e calcolo relazionale (parte 1) Algebra e calcolo relazionale (parte 1) Linguaggi di interrogazione per basi di dati relazionali Operazioni su basi di dati: interrogazioni (queries): legge dati dal base di dati aggiornamenti (updates):

Dettagli

ALGEBRA RELAZIONALE. DB -Algebra Relazionale 1

ALGEBRA RELAZIONALE. DB -Algebra Relazionale 1 ALGEBRA RELAZIONALE DB -Algebra Relazionale 1 ESEMPIO DI QUERY NOME MATRICOL INDIRIZZO TELEFONO Mario Rossi 123456 Via Etnea 1 222222 Ugo Bianchi 234567 Via Roma 2 333333 Teo Verdi 345678 Via Enna 3 444444

Dettagli

Operatori aggregati. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni con raggruppamento

Operatori aggregati. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni con raggruppamento Operatori aggregati In algebra relazionale le espressioni vengono valutate sulle singole tuple in successione. Talvolta però possono essere necessarie informazioni derivabili dall esame di tutte le tuple

Dettagli

Basi di dati. Selezione, proiezione e join. Linguaggi di interrogazione. Selezione, proiezione e join. Equivalenza di espressioni

Basi di dati. Selezione, proiezione e join. Linguaggi di interrogazione. Selezione, proiezione e join. Equivalenza di espressioni elezione, proiezione e join Basi di dati Linguaggi di interrogazione quali professori hanno esaminato Antonio? Nome Città CDip Carlo Carlo Bologna Bologna Antonio oma Log Cod Corso 1 2 3 Data Voto 7997

Dettagli

ALGEBRA RELAZIONALE. Linguaggi di interrogazione relazionale

ALGEBRA RELAZIONALE. Linguaggi di interrogazione relazionale ALGEBRA RELAZIONALE Linguaggi di interrogazione relazionale! Linguaggi di interrogazione (LI) permettono la manipolazione e il reperimento di dati da una base di dati! Il modello relazionale supporta LI

Dettagli

Logica booleana. Bogdan Maris ( )

Logica booleana. Bogdan Maris ( ) Logica booleana 1 Algebra di Boole Opera con i soli valori di verità 0 o 1 (variabili booleane o logiche) La struttura algebrica studiata dall'algebra booleana è finalizzata all'elaborazione di espressioni

Dettagli

MODULO Il sistema azienda. Sistema Informativo e Informatico Requisiti dei dati

MODULO Il sistema azienda. Sistema Informativo e Informatico Requisiti dei dati MODULO 2 TITOLO Basi di dati Il modulo introduce le basi di dati. Si definisce la differenza tra sistema informativo ed informatico e successivamente si trattano i limiti della gestione ad archivi, giungendo

Dettagli

La gestione delle interrogazioni

La gestione delle interrogazioni La gestione delle interrogazioni Basi di dati: Architetture e linee di evoluzione - Seconda edizione Capitolo 1 Appunti dalle lezioni Esecuzione e ottimizzazione delle query Un modulo del DBMS Query processor

Dettagli

Operazioni. Lezione 8. Operazioni Relazionali. Operazioni insiemistiche Intersezione: Operazioni insiemistiche Unione:

Operazioni. Lezione 8. Operazioni Relazionali. Operazioni insiemistiche Intersezione: Operazioni insiemistiche Unione: Operazioni Lezione 8 Operazioni Relazionali Le diverse operazioni vengono eseguite sulle istanze non sulla struttura della tabella Il risultato dell operazione sono un insieme di istanze che soddisfano

Dettagli

SQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. SQL come Data Manipulation Language - (SELECT FROM WHERE ORDER BY)

SQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. SQL come Data Manipulation Language - (SELECT FROM WHERE ORDER BY) SQL SQL come Data Manipulation Language - (SELECT FROM WHERE ORDER BY) Esempio 1 Madre Maternita Figlio Nome Eta Andrea 27 Aldo 25 Maria 55 Anna 50 Filippo 26 50 60 Olga 30 Sergio 85 Luisa 75 Persone Reddito

Dettagli

Join (naturale) Join. Join. Join

Join (naturale) Join. Join. Join Combinando selezione e proiezione, si possono estrarre informazioni da una sola relazione. Non si possono però correlare informazioni presenti in relazioni diverse Il join è l'operatore più interessante

Dettagli

Algebra Relazionale. Concetti Fondamentali

Algebra Relazionale. Concetti Fondamentali Algebra Relazionale Concetti Fondamentali Introduzione La Base di Dati di Esempio Algebra Relazionale selezione, proiezione prodotto cartesiano, join unione, intersezione, differenza ridenominazioni Forma

Dettagli

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, ALGEBRA E CALCOLO RELAZIONALE

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, ALGEBRA E CALCOLO RELAZIONALE Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : ALGEBRA E CALCOLO RELAZIONALE Esempi Impiegati Matricola Nome Età Stipendio 7309 Rossi 34 45 5998 Bianchi 37 38 9553 Neri 42 35 5698

Dettagli

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a

Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Algoritmi e basi di dati Modulo Basi di dati a.a. 2010-2011 2011 Docente: Gigliola Vaglini Docente laboratorio: Alessandro Lori 1 Lezione 4 Semantica dei linguaggi

Dettagli

Interrogazioni di tipo insiemistico. Select. Interrogazioni di tipo insiemistico. Interrogazioni nidificate

Interrogazioni di tipo insiemistico. Select. Interrogazioni di tipo insiemistico. Interrogazioni nidificate Select La sintassi di select cui siamo arrivati dopo le estensioni viste è quindi: SelectSQL ::= select ListaAttributiOEspressioni from ListaTabelle [ where CondizioniSemplici ] [ group by ListaAttributiDiRaggruppamento]

Dettagli

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi

Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi Informatica della Facoltà di Lingue e Letterature dell Università degli Studi di Torino. Qualsiasi altro Query (Interrogazioni) SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il

Dettagli

SQL - Sottointerrogazioni correlate

SQL - Sottointerrogazioni correlate SQL - Sottointerrogazioni correlate negli esempi visti ogni subquery viene eseguita una volta per tutte ed il valore (o insieme di valori) è usato nella clausola WHERE della query esterna è possibile definire

Dettagli

IL MODELLO RELAZIONALE

IL MODELLO RELAZIONALE IL MODELLO RELAZIONALE!1 Definizione: I meccanismi per definire una base di dati con il modello relazionale sono l ennupla e la relazione: int, real, boolean e string sono tipi primitivi; se T 1,..., T

Dettagli

Corso sul linguaggio SQL

Corso sul linguaggio SQL Corso sul linguaggio SQL Modulo L2B (SQL) 4.3-1 Prerequisiti Creazione e gestione tabelle Uso ambiente SQL in algebra relazionale 2 1 Introduzione In questa Unità vediamo i comandi SQL con i quali è possibile

Dettagli

L algebra relazionale

L algebra relazionale L algebra relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Algebra.pdf Sistemi Informativi L-A Linguaggi di manipolazione (DML)

Dettagli

Il linguaggio SQL: le viste

Il linguaggio SQL: le viste Il linguaggio SQL: le viste Basi di dati 1 Il linguaggio SQL: le viste Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine Il linguaggio SQL: le viste Basi di dati 2 Introduzione

Dettagli

L algebra relazionale

L algebra relazionale L algebra relazionale Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: Algebra.pdf Sistemi Informativi L-A Linguaggi di manipolazione (DML)

Dettagli

Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica I Modulo Basi di dati a.a

Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica I Modulo Basi di dati a.a Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica I Modulo Basi di dati a.a. 2012-2013 2013 Docente: Gigliola Vaglini Docenti laboratorio: Francesco Pistolesi,, Antonio Virdis 1 Lezione

Dettagli

SQL QUERY: Le interrogazioni del database

SQL QUERY: Le interrogazioni del database Appunti della lezione di Database del 20 ottobre 2016 (mattina) Studenti: D Amuri Giuseppe, De Luca Federico Professore: Mario Bochicchio SQL QUERY: Le interrogazioni del database Per effettuare un interrogazione

Dettagli

Algebra relazionale (versione formale )

Algebra relazionale (versione formale ) Algebra relazionale (versione formale ) algebra relazionale (2) Selezione L operatore di selezione, σ, permette di selezionare un sottoinsieme delle tuple di una relazione, applicando a ciascuna di esse

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 4 Raffaella Gentilini 1 / 46 Sommario 1 Join di Tabelle Join Naturale Theta Join Join Esterno 2 3 Funzioni d aggregazione La Clausola GROUP BY La Clausola HAVING

Dettagli

Join. il Join è l'operatore più interessante dell'algebra relazionale permette di correlare dati in relazioni diverse 20/03/2006 1

Join. il Join è l'operatore più interessante dell'algebra relazionale permette di correlare dati in relazioni diverse 20/03/2006 1 Join il Join è l'operatore più interessante dell'algebra relazionale permette di correlare dati in relazioni diverse 20/03/2006 1 Prove scritte in un concorso pubblico I compiti sono anonimi e ad ognuno

Dettagli

Basi di Dati. Concetti Avanzati

Basi di Dati. Concetti Avanzati Basi di Dati Concetti Avanzati Concetti Avanzati Raggruppamenti Clausole GROUP BY e HAVING Forma Generale della SELECT Nidificazione Uso nel DML e DDL Nidificazione, Viste e Potere Espressivo Esecuzione

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 D1.2 Selezione e proiezione 1 Prerequisiti Elementi di teoria degli insiemi Composizione di operazioni 2 1 Introduzione Oltre alle operazioni insiemistiche, può capitare

Dettagli

Basi di dati 8 novembre 2010 Prova parziale Compito A

Basi di dati 8 novembre 2010 Prova parziale Compito A Basi di dati 8 novembre 2010 Prova parziale Compito A Cognome: Nome: Matricola: Domanda 1 (15%) Si supponga di voler rappresentare in una base di dati relazionale le informazioni relative al calendario

Dettagli

SQL. SQL: "storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. "standard di fatto"

SQL. SQL: storia. Sviluppato nella metà degli anni settanta (1974) presso il laboratorio di ricerca IBM di S.Josè. Dal 1983 ca. standard di fatto SQL SQL: "storia Sviluppato nella metà degli anni settanta (194) presso il laboratorio di ricerca IBM di S.Josè Dal 1983 ca. "standard di fatto" E il linguaggio di riferimento per l interrogazione di DBMS

Dettagli

Operazioni Relazionali. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni

Operazioni Relazionali. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Operazioni Relazionali Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto san giovanni Algebra relazionale Il modello logico Relazionale si fonda sull algebra relazionale Permette di

Dettagli

Linguaggi per basi di dati

Linguaggi per basi di dati ALGEBRA RELAZIONALE Linguaggi per basi di dati operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento 2 Linguaggi

Dettagli

Introduzione all algebra relazionale. Prof. Giovanni Giuffrida

Introduzione all algebra relazionale. Prof. Giovanni Giuffrida Introduzione all algebra relazionale Prof. Giovanni Giuffrida Esempio di interrogazione Studenti Nome Matricola Indirizzo Telefono Mario Rossi 456 Via Roma 1 095 111 Ugo Bianchi 567 Via Etnea 154 095 222

Dettagli

Basi di dati - Laboratorio

Basi di dati - Laboratorio Basi di dati - Laboratorio Corso di Laurea in Bioinformatica Docente: Barbara Oliboni Lezione 4 Contenuto della lezione Interrogazioni SQL Join interni ed esterni Uso di variabili tupla o ALIAS Interrogazioni

Dettagli

Basi di Dati: Corso di laboratorio

Basi di Dati: Corso di laboratorio Basi di Dati: Corso di laboratorio Lezione 4 Raffaella Gentilini 1 / 27 Sommario 1 Join di Tabelle 2 3 2 / 27 Lo Statement JOIN Join espliciti di tabelle nella clausola FROM In SQL e possibile scrivere

Dettagli

Linguaggi per basi di dati ALGEBRA RELAZIONALE. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione

Linguaggi per basi di dati ALGEBRA RELAZIONALE. Linguaggi di interrogazione per basi di dati relazionali. Linguaggi di interrogazione Linguaggi per basi di dati Capitolo 3: LGER RELZIONLE operazioni sullo schema DDL: data definition language operazioni sui dati DML: data manipulation language interrogazione ("query") aggiornamento 1

Dettagli

Prof. Alberto Postiglione Dipartimento di Scienze della Comunicazione Università degli Studi di Salerno

Prof. Alberto Postiglione Dipartimento di Scienze della Comunicazione Università degli Studi di Salerno Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (1) Interrogazioni semplici Prof. Alberto Postiglione

Dettagli

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini

SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA. 3. Panoramica su SQL Prof. Mauro Giacomini SISTEMI INFORMATIVI E TELEMEDICINA INFORMATICA MEDICA 3. Panoramica su SQL Prof. Mauro Giacomini Sommario Introduzione Istruzione SELECT Tipi di Join Subquery Comandi DML Creazione delle tabelle Introduzione

Dettagli

Interrogazioni in SQL SQL1 1

Interrogazioni in SQL SQL1 1 Interrogazioni in SQL SQL1 1 Dichiaratività di SQL E un linguaggio di IV generazione: in SQL l'utente specifica QUALE informazione è di suo interesse ma non COME estrarla dai dati il sistema costruisce

Dettagli

Linguaggi di interrogazione

Linguaggi di interrogazione Linguaggi di interrogazione Un interrogazione è una funzione che data una base di dati produce una relazione su un dato schema Linguaggi di interrogazione Procedurali specificano il procedimento di generazione

Dettagli

Basi di dati Algebra relazionale Figure ed esempi

Basi di dati Algebra relazionale Figure ed esempi asi di dati Algebra relazionale Figure ed esempi 1 Laureati Matricola 7274 Nome Rossi Età 42 7432 9824 Verdi 54 45 Unione Laureati È Specialisti Specialisti Matricola 9297 7432 9824 Matricola Nome Età

Dettagli

BASI DATI: algebra relazionale INFORMATICA APPLICATA E SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

BASI DATI: algebra relazionale INFORMATICA APPLICATA E SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI BASI DATI: algebra relazionale INFORMATICA APPLICATA E SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI 1 Algebra relazionale Definizione L'algebra relazionale è un insieme di operazioni (query) che servono

Dettagli

Interrogazioni complesse. SQL avanzato 1

Interrogazioni complesse. SQL avanzato 1 Interrogazioni complesse SQL avanzato Classificazione delle interrogazioni complesse Query con ordinamento Query con aggregazione Query con raggruppamento Query binarie Query annidate SQL avanzato 2 Esempio

Dettagli

Interrogazioni. L istruzione base per le interrogazioni è select

Interrogazioni. L istruzione base per le interrogazioni è select Interrogazioni L istruzione base per le interrogazioni è select select ListaAttributi (target list) from ListaTabelle (clausola from) [ where Condizione ] (clausola where) Più in dettaglio: select AttrEspr

Dettagli

Corso di. Basi di Dati I. 4. Algebra relazionale

Corso di. Basi di Dati I. 4. Algebra relazionale Corso di Basi di Dati 4. Algebra relazionale A.A. 2016 2017 Algebra relazionale L algebra relazionale è un insieme di operazioni che si effettuano su una base di dati relazionale. Lo scopo è quello di

Dettagli

L algebra relazionale

L algebra relazionale L algebra relazionale Sistemi Informativi T Versione elettronica: 03.Algebra.pdf Linguaggi di manipolazione (DML) per DB Un linguaggio di manipolazione, o DML, permette di interrogare e modificare istanze

Dettagli