Linguaggio SQL: fondamenti

Documenti analoghi
D B M G. Linguaggio SQL: fondamenti. Operatori insiemistici. Operatore UNION Operatore INTERSECT Operatore EXCEPT

Linguaggio SQL: fondamenti D B M G

Elena Baralis 2007 Politecnico di Torino 1

D B M G. Linguaggio SQL: fondamenti. Istruzione SELECT: fondamenti. Elena Baralis 2007 Politecnico di Torino 1. Struttura di base

Istruzione SELECT: fondamenti Interrogazioni nidificate Operatori insiemistici Istruzioni di aggiornamento Gestione delle tabelle

Linguaggio SQL: fondamenti D B M G

Linguaggio SQL: fondamenti D B M G

D B M G 2. Linguaggio SQL: costrutti avanzati. SQL per le applicazioni

D B M G D B M G 2. Sistemi informativi. Linguaggio SQL: costrutti avanzati

Basi di dati. Linguaggio SQL: fondamenti - Introduzione. Elena Baralis 2007 Politecnico di Torino 1 D B M G 2 D B M G D B M G 4 D B M G 6

SQL per le applicazioni. Basi di dati. Elena Baralis. Pag Politecnico di Torino 1 D B M G2 D B M G4 D B M G5 D B M G6. SQL per le applicazioni

Linguaggio SQL: fondamenti D B M G

Corso con contenuti progettuali e metodologici Obiettivi

Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL. Il linguaggio SQL: fondamenti. Il linguaggio SQL

Linguaggio SQL: fondamenti

Elena Baralis 2013 Politecnico di Torino 1

D B M G 2. Linguaggio SQL: fondamenti. Istruzioni di aggiornamento. Introduzione Istruzione INSERT Istruzione DELETE Istruzione UPDATE

Laura Farinetti - DAUIN Politecnico di Torino. Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate)

Elena Baralis 2007 Politecnico di Torino 1

Sia dato lo schema relazionale costituito dalle tabelle (le chiavi primarie sono sottolineate)

Elena Baralis 2007 Politecnico di Torino 1

SQL - Structured Query Language

Basi di dati e Sistemi informativi aziendali

Linguaggio SQL: fondamenti. Basi di dati. Elena Baralis Pag. 1. Linguaggio SQL: fondamenti. Sistemi informativi. Introduzione

Tabelle esempio: Impiegato/Dipartimento

Esercizi proposti su SQL - SELECT avanzata. Laura Farinetti - DAUIN Politecnico di Torino

Elena Baralis 2007 Politecnico di Torino 1

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

Interrogazioni complesse. SQL avanzato 1

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

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

Basi di dati - Laboratorio

Creazione di una tabella Modifica della struttura di una tabella Cancellazione di una tabella Dizionario dei dati Integrità dei dati

Elena Baralis 2007 Politecnico di Torino 1

Basi di Dati: Corso di laboratorio

SQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto

Elena Baralis 2007 Politecnico di Torino 1

Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL

D B M G. Linguaggio SQL: fondamenti. Gestione delle tabelle

SQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)

Linguaggio SQL: fondamenti D B M G

Elena Baralis 2007 Politecnico di Torino D B M G M BG. Gestione delle tabelle. Linguaggio SQL: fondamenti. Creazione di una tabella (1/3)

Corso di Basi di Dati A.A. 2015/2016

Esercitazione 1 Algebra relazionale

Corso di. Basi di Dati I. 8. Esercitazioni in SQL: Interrogazioni nidificate

E possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione.

Corso sul linguaggio SQL

Operatori aggregati: COUNT

Operatori aggregati: COUNT

Basi di Dati. Esercitazione Algebra Relazionale. 16 maggio 2008

Join esplicito. SELECT con join esplicito, sintassi. Ulteriore estensione: join naturale (meno diffuso) Outer join. Join esterno: "outer join"

SQL - Sottointerrogazioni correlate

Operazioni su insiemi: unione, intersezione e differenza

Consideriamo lo schema relazionale

Corso sul linguaggio SQL

Interrogazioni nidificate

SQL seconda parte 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 2010/11

Lezione 6 SQL Basi di dati bis Docente Mauro Minenna Pag.1

Data Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003

Corso di Basi di Dati A.A. 2015/2016

Gestione di basi di dati relazionali con SQL (parte II) Valutazione delle condizioni su insiemi di tuple

Lezione 7 SQL (II) Basi di dati bis Docente Mauro Minenna Pag.1

SQL: Structured Query Language. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Laboratorio di Basi di Dati e Web

Basi di Dati: Corso di laboratorio

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

Il linguaggio SQL: query innestate

Esercizi di Informatica Documentale

Esercitazione 1. ogni tupla contribuisce al risultato: Impiegato Reparto Rossi. Bruni. Bianchi

SQL terza parte 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 2010/11

Gestione dei valori nulli

Interrogazioni in SQL SQL1 1

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

Basi di Dati: Corso di laboratorio

Sommario. Introduzione... 13

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

Esercizi di Informatica Documentale

SQL - Structured Query Language

ed SQL 10 Novembre 2009

Interrogazioni su più tabelle. Interrogazioni su più tabelle. Clausola where. Interrogazioni su più tabelle

Laboratorio di Basi di dati/web/mm e Basi di dati per Bioinformatica

Gestione e Analisi dei Dati. Lezione 2 Vincoli su attributo Selezioni semplici su una tabella

Alessandra Raffaetà. Esercizio: Cinema

S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali. Alessandra Raffaetà

SQL: RAGGRUPPAMENTI, QUANTIFICAZIONE, METODO. Patrizio Dazzi a.a

Basi di Dati: Corso di laboratorio

Laboratorio di Basi di dati & Basi di dati per Bioinformatica

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

Interrogazioni (Query) Esempi. Esempi. Esempi

SQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. SQL come Data Manipulation Language - Funzioni Aggregate e GROUP BY

Basi di Dati Corso di Laura in Informatica Umanistica

Corso di Informatica Medica

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

Principi di Progettazione del Software a.a Il linguaggio SQL. Il Linguaggio SQL

Transcript:

Operatore UNION Operatore INTERSECT Operatore EXCEPT 2007 Politecnico di 1

Operatore UNION Operatore insiemistico di unione A UNION B Esegue l unione delle due espressioni relazionali A e B le espressioni relazionali A e B possono essere generate da istruzioni SELECT richiede la compatibilità di schema tra A e B rimozione dei duplicati UNION rimuove i duplicati UNION ALL non rimuove i duplicati 2007 Politecnico di 2

UNION: esempio UNION: esempio P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma FP CodF F2 F2 F3 F4 F4 F4 P3 P4 P5 P3 P4 P5 Qta 300 200 0 200 100 100 300 0 200 200 300 0 2007 Politecnico di 3

UNION: esempio SELECT WHERE Colore='' UNION: esempio SELECT WHERE Colore='' P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma 2007 Politecnico di 4

UNION: esempio SELECT FROM FP WHERE CodF='F2' UNION: esempio FP CodF F2 F2 F3 F4 F4 F4 P3 P4 P5 P3 P4 P5 Qta 300 200 0 200 100 100 300 0 200 200 300 0 SELECT FROM FP WHERE CodF='F2' 2007 Politecnico di 5

UNION: esempio SELECT WHERE Colore='' UNION SELECT FROM FP WHERE CodF='F2'; UNION: esempio SELECT WHERE Colore='' UNION SELECT FROM FP WHERE CodF='F2'; R 2007 Politecnico di 6

UNION: esempio SELECT WHERE Colore='' UNION SELECT FROM FP WHERE CodF='F2'; Rimozione del duplicato R UNION: esempio Compatibilità di schema SELECT WHERE Colore='' UNION SELECT FROM FP WHERE CodF='F2'; 2007 Politecnico di 7

UNION ALL: esempio SELECT WHERE Colore='' UNION ALL SELECT FROM FP WHERE CodF='F2'; UNION ALL: esempio SELECT WHERE Colore='' UNION ALL SELECT FROM FP WHERE CodF='F2'; R 2007 Politecnico di 8

Operatore INTERSECT Operatore insiemistico di intersezione A INTERSECT B Esegue l intersezione delle due espressioni relazionali A e B le espressioni relazionali A e B possono essere generate da istruzioni SELECT richiede la compatibilità di schema tra A e B 2007 Politecnico di 9

INTERSECT: esempio Trovare le città che sono sia sede di fornitori, sia P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma F CodF F2 F3 F4 F5 NomeF Andrea Luca Antonio Gabriele Matteo NSoci 2 1 3 2 3 Sede Venezia INTERSECT: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Sede FROM F F CodF F2 F3 F4 F5 NomeF Andrea Luca Antonio Gabriele Matteo NSoci 2 1 3 2 3 Sede Venezia Sede Venezia 2007 Politecnico di 10

INTERSECT: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Magazzino P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma Magazzino Roma INTERSECT: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Sede FROM F INTERSECT SELECT Magazzino ; 2007 Politecnico di 11

INTERSECT: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Sede FROM F INTERSECT SELECT Magazzino ; Sede Venezia Magazzino Roma R Equivalenza con altri operatori L operazione di intersezione può essere eseguita anche mediante il join l operatore IN 2007 Politecnico di 12

Equivalenza con il join La clausola FROM contiene le relazioni interessate dall intersezione La clausola WHERE contiene condizioni di join tra gli attributi presenti nella clausola SELECT delle espressioni relazionali A e B Equivalenza con il join: esempio Trovare le città che sono sia sede di fornitori, sia 2007 Politecnico di 13

Equivalenza con il join: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Sede FROM F, P... Equivalenza con il join: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Sede FROM F, P WHERE F.Sede=P.Magazzino; 2007 Politecnico di 14

Equivalenza con l operatore IN Una delle due espressioni relazionali diviene un interrogazione nidificata mediante l operatore IN Gli attributi nella clausola SELECT esterna, uniti da un costruttore di tupla, costituiscono la parte sinistra dell operatore IN Equivalenza con IN: esempio Trovare le città che sono sia sede di fornitori, sia 2007 Politecnico di 15

Equivalenza con IN: esempio Trovare le città che sono sia sede di fornitori, sia SELECT Magazzino WHERE Magazzino IN (SELECT Sede FROM F); 2007 Politecnico di 16

Operatore EXCEPT Operatore insiemistico di differenza A EXCEPT B Sottrae l espressione relazionale B all espressione relazionale A richiede la compatibilità di schema tra A e B EXCEPT: esempio Trovare le città che sono sede di fornitori, ma non P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma F CodF F2 F3 F4 F5 NomeF Andrea Luca Antonio Gabriele Matteo NSoci 2 1 3 2 3 Sede Venezia 2007 Politecnico di 17

EXCEPT: esempio Trovare le città che sono sede di fornitori, ma non SELECT Sede FROM F F CodF F2 F3 F4 F5 NomeF Andrea Luca Antonio Gabriele Matteo NSoci 2 1 3 2 3 Sede Venezia Sede Venezia EXCEPT: esempio Trovare le città che sono sede di fornitori, ma non SELECT Magazzino P P3 P4 P5 NomeP Maglia Jeans Gonna Bermuda Colore Verde Taglia 44 42 Magazzino Roma Magazzino Roma 2007 Politecnico di 18

EXCEPT: esempio Trovare le città che sono sede di fornitori, ma non SELECT Sede FROM F EXCEPT SELECT Magazzino ; EXCEPT: esempio Trovare le città che sono sede di fornitori, ma non SELECT Sede FROM F EXCEPT SELECT Magazzino ; Sede Venezia Magazzino Roma R Venezia 2007 Politecnico di 19

Equivalenza con l operatore NOT IN L operazione di differenza può essere eseguita anche mediante l operatore NOT IN l espressione relazionale B è nidificata all interno dell operatore NOT IN gli attributi nella clausola SELECT dell espressione relazionale A, uniti da un costruttore di tupla, costituiscono la parte sinistra dell operatore NOT IN Equivalenza con l operatore NOT IN: esempio Trovare le città che sono sede di fornitori, ma non 2007 Politecnico di 20

Equivalenza con l operatore NOT IN: esempio Trovare le città che sono sede di fornitori, ma non SELECT Sede FROM F WHERE Sede NOT IN (SELECT Magazzino ); 2007 Politecnico di 21