Corso di. Basi di Dati I. 8. Esercitazioni in SQL: Interrogazioni nidificate
|
|
- Carlo Ruggeri
- 5 anni fa
- Visualizzazioni
Transcript
1 Corso di Basi di Dati 8. Esercitazioni in SQL: Interrogazioni nidificate A.A
2 Interrogazioni nidificate Come abbiamo visto, in una query SQL il comando where è seguito da un argomento che può contenere a sua volta tabelle (ottenute con altre query). Esempio: select Nome from Dipartimenti where Nome <> all (select Dipartimento from Impiegati where Nome = Rossi ) In questo caso si parla di interrogazioni nidificate. Bisogna fare attenzione al quantificatore che stiamo usando (nell esempio, all), perchè stiamo confrontando un dato di una singola riga (nell esempio, Nome) con un intera tabella.
3 Interrogazioni nidificate Ricordiamo che SQL usa per questo i comandi: all, any, in, not in, exists, not exists E osserviamo che ovviamente ci deve essere compatibilità (sul tipo di dato) tra l attributo restituito dall interrogazione nidificata e l attributo con cui avviene il confronto!
4 Interrogazioni nidificate Esempio Consideriamo due tabelle: Impiegati(Nome, Dipartimento) Dipartimenti(Nome, Città) Esercizio: estrarre gli impiegati (con tutti i loro dati) che lavorano in dipartimenti a Roma, dando due soluzioni: una con il join di Impiegati e Dipartimenti, una usando un interrogazione nidificata e il quantificatore any.
5 Interrogazioni nidificate Prima soluzione: select Impiegati.Nome, Impiegati.Dipartimento from Impiegati, Dipartimenti D where Dipartimento = D.Nome and where D.Città = Roma Seconda soluzione: select * from Impiegati where Dipartimento = any (select Nome where Dipartimento = any (from Dipartimenti where Dipartimento = any (where Città = Roma )
6 Interrogazioni nidificate semplici In questi esempi di interrogazioni nidificate, le due interrogazioni sono indipendenti. Si chiamano interrogazioni nidificate semplici. Il sistema può cioè eseguire prima l interrogazione nidificata (quella dopo il comando where), ottenendo una tabella temporanea col risultato. Questo viene poi confrontato, nell interrogazione principale, con i dati di ciascuna riga della tabella coinvolta. Quindi l interrogazione nidificata viene eseguita una sola volta.
7 Interrogazioni nidificate con correlazione Nell interrogazione nidificata, si può però fare anche riferimento alla tabella dell interrogazione principale. In questo caso si parla di interrogazioni nidificate con correlazione.
8 Interrogazioni nidificate con correlazione Esempio: Consideriamo la tabella Impiegati(Nome, Cognome, CF). Esercizio: Estrarre gli impiegati che hanno degli omonimi (stesso nome e cognome, ma diverso codice fiscale). Anche in questo caso possiamo dare due soluzioni, una che usa il join, e una che usa un interrogazione nidificata con il quantificatore exists.
9 Interrogazioni nidificate con correlazione Prima soluzione: select I1.Nome, I1.Cognome, I1.CF from Impiegati I1, Impiegati I2 where I1.Nome = I2.Nome and where I1.Cognome = I2.Cognome and where I1.CF <> I2.CF Seconda soluzione: select * from Impiegati I1 where exists (select * from Impiegati I2 where exists (I1.Nome = I2.Nome and where exists (I1.Cognome = I2.Cognome and where exists (I1.CF <> I2.CF)
10 Interrogazioni nidificate con correlazione Nella seconda soluzione select * from Impiegati I1 where exists (select * from Impiegati I2 where exists (I1.Nome = I2.Nome and where exists (I1.Cognome = I2.Cognome and where exists (I1.CF <> I2.CF) il sistema considera ogni riga di Impiegati (I1), e deve decidere se il comando where è soddisfatto. Per questo, crea una nuova tabella nell interrogazione nidificata, con le righe di Impiegati (qui I2) in cui il nome e il cognome, ma non il CF, coincidono con i dati della riga fissata di I1.
11 Interrogazioni nidificate con correlazione Altro esercizio: estrarre gli impiegati che non hanno omonimi.
12 Interrogazioni nidificate con correlazione Con il join, dovremmo usarlo assieme alla differenza insiemistica. Soluzione (con interrogazione nidificata): select * from Impiegati I1 where not exists (select * from Impiegati I2 where not exists (I1.Nome = I2.Nome and where not exists (I1.Cognome = I2.Cognome and where not exists (I1.CF <> I2.CF)
13 Interrogazioni nidificate con correlazione In questo tipo di interrogazioni, il sistema non può più calcolare l interrogazione nidificata per prima, e una sola volta. Deve ripeterla per ogni riga della tabella dell interrogazione principale. Osserviamo anche che possiamo avere un numero arbitrario di nidificazioni. Attenzione Un attributo è usabile solo nell ambito dell interrogazione in cui è definita o nell ambito di un interrogazione nidificata (a qualsiasi livello) all interno di essa.
14 Interrogazioni nidificate con correlazione Esempio: questa interrogazione è corretta? select Dipartimento from Impiegati where Dipartimento in (select Nome where Dipartimento in (from Dipartimenti D1 where Dipartimento in (where Nome = Produzione ) or Dipartimento in (select Nome or Dipartimento in (from Dipartimento D2 or Dipartimento in (where D1.Città = D2.Città) NO! Il dato D1.Città non fa parte della tabella D2, che è quella della seconda interrogazione nidificata, né di Impiegati, che è l interrogazione principale. Fa parte della tabella D1, che è nell altra interrogazione nidificata!
15 Intersezione e differenza Come abbiamo detto, in MySQL non sono disponibili gli operatori insiemistici intersezione e differenza. Però è facile sostituirli con interrogazioni nidificate. Esempio: consideriamo la relazione Persone(Nome, Cognome). Esercizio: estrarre i nomi che sono anche cognomi. Usare in una soluzione l intersezione, e in un altra soluzione un interrogazione nidificata.
16 Intersezione e differenza Prima soluzione: select Nome from Persone intersect select Cognome from Persone Seconda soluzione: select Nome from Persone where Nome in (select Cognome where Nome in (from Persone)
17 Intersezione e differenza Esercizio: estrarre i nomi che non sono anche cognomi. Usare in una soluzione la differenza, e in un altra soluzione un interrogazione nidificata.
18 Intersezione e differenza Prima soluzione: select Nome from Persone except select Cognome from Persone Seconda soluzione: select Nome from Persone where Nome not in (select Cognome where Nome not in (from Persone)
19 Altre interrogazioni nidificate con correlazione Esempio: consideriamo le relazioni Cantanti(Nome, Canzone) Autori(Nome, Canzone) Esercizio: estrarre i nomi dei cantautori puri, ovvero i cantanti che hanno eseguito solo canzoni di cui erano anche autori.
20 Altre interrogazioni nidificate con correlazione Soluzione: select Nome from Cantanti where Nome not in (select Nome where Nome not in (from Cantanti C where Nome not in (where Nome not in (select Nome where Nome not in (where Nome not in (from Autori A where Nome not in (where Nome not in (where A.Canzone where Nome not in (where Nome not in ( = C.Canzone))
21 Interrogazioni nidificate ed operatori aggregati Esempio: consideriamo le tabelle Impiegati(Nome, Cognome, Dipartimento, Stipendio) Dipartimenti(Nome, Città) Esercizio: Estrarre il dipartimento dove lavora l impiegato che guadagna lo stipendio massimo.
22 Interrogazioni nidificate ed operatori aggregati Soluzione: select Dipartimento from Impiegati where Stipendio = (select max(stipendio) where Stipendio = (from Impiegati)
23 Interrogazioni nidificate ed operatori aggregati Esercizio: Estrarre la città dove si trova il dipartimento dove lavora l impiegato che guadagna lo stipendio massimo.
24 Interrogazioni nidificate ed operatori aggregati Soluzione: select Città from Impiegati join Dipartimenti on Impiegati.Dipartimento = Dipartimenti.Nome where Stipendio = (select max(stipendio) where Stipendio = (from Impiegati)
25 Interrogazioni nidificate ed operatori aggregati Esercizio: Estrarre il dipartimento dove lavora l impiegato che guadagna lo stipendio massimo, ma senza usare l operatore max, e usando altri quantificatori (fra all, any, in, not in, exists, not exists).
26 Interrogazioni nidificate ed operatori aggregati Soluzione: select Dipartimento from Impiegati where Stipendio >= all (select Stipendio where Stipendio >= all (from Impiegati)
27 Interrogazioni nidificate ed operatori aggregati Esempio: consideriamo le tabelle Persone(Nome, Reddito) Genitori(Figlio, Genitore) Esercizio: Estrarre il reddito complessivo dei figli di Gianni e Alessia.
28 Interrogazioni nidificate ed operatori aggregati Soluzione: select sum(p.reddito) from Persone P where Nome = any (select Figlio where Nome = any (from Genitori where Nome = any (where Genitore = Gianni ) and Nome = any (select Figlio and Nome = any (from Genitori and Nome = any (where Genitore = Alessia )
29 Interrogazioni nidificate ed operatori aggregati Esempio: consideriamo le tabelle Negozi(ID, Nome, Città) Prodotti(Codice, Nome, Marca) Listino(Negozio, Prodotto, Prezzo) Esercizio: Trovare, per ciascun nome di un prodotto (anche di marche diverse), la città in cui viene venduto al prezzo più basso.
30 Interrogazioni nidificate ed operatori aggregati select distinct P.Nome, N.Città from Negozi N, Listino L, Prodotti P where N.ID = L.Negozi where and L.Prodotto = P.Codice where and Prezzo <= all (select Prezzo where and Prezzo <= all (from Prodotti P2, Listino L2 where and Prezzo <= all (where L2.Prodotto = P2.Codice where and Prezzo <= all (and P2.Nome = P.Nome)
31 Altri esercizi Esempio: consideriamo le tabelle Persone(Nome, Sesso) Genitori(Figlio, Genitore) Esercizio: Estrarre i nonni di ogni persona.
32 Altri esercizi select G1.Figlio as Nipote, G2.Genitore as Nonno from Genitori G1, Genitori G2 where G1.Genitore = G2.Figlio
33 Altri esercizi Esempio: consideriamo le stesse tabelle Persone(Nome, Sesso) Genitori(Figlio, Genitore) Esercizio: Produrre una relazione che mostra per ciascun figlio i rispettivi genitori (padre e madre), solo se li ha entrambi.
34 Altri esercizi select GP.Figlio as Figlio, GP.Genitore as Padre, GM.Genitore as Madre from Genitori GP, Genitori GM, Persone PP, Persone PM where GP.Figlio=GM.Figlio and GP.Genitore=PP.Nome and PP.Sesso= M and GM.Genitore=PM.Nome and PM.Sesso= F
Corso di Basi di Dati A.A. 2015/2016
Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2015/2016 Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 22/02/2016 Interrogazioni nidificate In
DettagliEsercitazione: Interrogazioni SQL
Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Interrogazioni SQL Domenico Fabio Savo 1 Sommario 1. Creazione del database utilizzato per l esercitazione
DettagliInterrogazioni 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]
DettagliPrima Esercitazione Autoguidata
Laurea in Ingegneria Informatica - Università di Roma "La Sapienza" Corso di Basi di Dati - A.A. 2003/2004 Prima Esercitazione Autoguidata Diego Calvanese Domenico Lembo Domenico Lembo Ricevimento: Giovedì
DettagliBasi di Dati. Esercitazione 1: Interrogazioni in SQL. K. Donno - Interrogazioni in SQL
Basi di Dati Esercitazione 1: Interrogazioni in SQL DB di riferimento per esempi Consideriamo i seguenti schemi di una base di dati relazionale: PremioProduzione, DataAssunzione) Viene data la seguente
DettagliSQL. Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS)
1 SQL Laboratorio di Progettazione di Basi di Dati (CdS in Informatica e TPS) a.a. 2015/2016 http://www.di.uniba.it/~lisi/courses/basi-dati/bd2015-16.htm dott.ssa Francesca A. Lisi francesca.lisi@uniba.it
DettagliOperatori 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
DettagliSQL - Structured Query Language
SQL - Structured Query Language Luca Martini Università di Pisa 16 aprile 2010 Riepilogo sugli operatori aggregati Sintassi SELECT A t t r i b u t o 1, MAX( A t t r i b u t o 2 ),... FROM Tabella1, Tabella2,...
DettagliCorso di Basi di Dati A.A. 2015/2016
Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2015/2016 Language Soluzione Esercizi Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 19/03/2016
DettagliAtzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, SQL
Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1996-2002 : SQL Operatori aggregati Nelle espressioni della target list possiamo avere anche espressioni che calcolano valori a partire da insiemi
DettagliJoin esplicito. SELECT con join esplicito, sintassi. Ulteriore estensione: join naturale (meno diffuso) Outer join. Join esterno: "outer join"
Join esplicito Padre e madre di ogni persona select paternita.figlio,padre, madre, paternita where paternita.figlio = maternita.figlio SELECT con join esplicito, sintassi SELECT FROM Tabella { JOIN Tabella
Dettagli3 SQL : Interrogazioni
Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2010/2011 Andrea Marrella Ultimo aggiornamento
DettagliTabelle esempio: Impiegato/Dipartimento
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (3) Insiemistiche e Nidificate Prof. Alberto Postiglione
DettagliSQL Matteo Magnani, Danilo Montesi Università di Bologna SQL. SQL come Data Manipulation Language - Funzioni Aggregate e GROUP BY
SQL SQL come Data Manipulation Language - Funzioni Aggregate e GROUP BY Esempio DB 1 Madre Maternita Figlio Nome Eta Andrea 27 Aldo 25 Maria 55 Anna 50 Filippo 26 Luigi 50 Franco 60 Olga 30 Sergio 85 Luisa
DettagliCorso di Basi di Dati A.A. 2013/2014
Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2013/2014 4 SQL : Structured Query Language Tiziana Catarci, Andrea Marrella Ultimo aggiornamento : 27/03/2014
DettagliOperatori aggregati: COUNT
Operatori aggregati: COUNT Il numero di figli di select count(*) as NumFigliDi where Padre = '' Paternità Padre Sergio Figlio Olga Filippo Andrea Aldo l operatore aggregato (count) viene applicato al risultato
DettagliSQL. Argomenti della lezione. Join esplicito. Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate
Argomenti della lezione SQL Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate Maternità Paternità Madre Figlio Olga Filippo Sergio Olga Filippo Persone
DettagliOperatori aggregati: COUNT
Operatori aggregati: COUNT Il numero di figli di Franco select count(*) as NumFigliDiFranco from Paternita where Padre = 'Franco' l operatore aggregato (count) viene applicato al risultato dell interrogazione:
DettagliSQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
SQL Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2005/2006 Select La forma di select cui siamo arrivati
DettagliInterrogazioni su più tabelle. Interrogazioni su più tabelle. Clausola where. Interrogazioni su più tabelle
Interrogazioni su più tabelle Se si vogliono estrarre informazioni da più tabelle, queste devono apparire come argomento della clausola from. Se si deve formulare un join, è possibile farlo in modo esplicito
DettagliCorso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a
Corso di Laurea in Ingegneria Informatica Fondamenti di Informatica II Modulo Basi di dati a.a. 2013-2014 Docente: Gigliola Vaglini Docente laboratorio: Francesco Pistolesi Lezione 4 Interrogazioni annidate
DettagliArgomenti della lezione. Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate
Argomenti della lezione Interrogazioni complesse in SQL join esplicito outer join operatori aggregati interrogazioni nidificate Maternità Paternità Madre Luisa Luisa Anna Anna Maria Maria Padre Sergio
DettagliCorso di. Basi di Dati I. 9. Esercitazioni in SQL: Check, asserzioni, viste
Corso di Basi di Dati 9. Esercitazioni in SQL: Check, asserzioni, viste A.A. 2016 2017 Check Come abbiamo visto, SQL permette di specificare vincoli sugli attributi e le tabelle attraverso il comando check
DettagliOperazioni su insiemi: unione, intersezione e differenza
Operazioni su insiemi: unione, intersezione e differenza Unione La select da sola non permette di fare unioni; serve un costrutto esplicito: select union [all] select... i duplicati vengono eliminati (a
DettagliCorso di. Basi di Dati I. 11. Esercitazioni in SQL: Altri esercizi
Corso di Basi di Dati 11. Esercitazioni in SQL: Altri esercizi A.A. 2016 2017 Esempio: consideriamo le seguenti tabelle Articoli(Id, Nome, Colore) Fornitori(Id, Nome, Indirizzo) Catalogo(Articolo, Fornitore,
DettagliSQL. Università degli Studi di Salerno. Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto
SQL Università degli Studi di Salerno Corso di Laurea in Scienze della Comunicazione Informatica generale (matr. Dispari) Docente: Angela Peduto A.A. 2007/2008 Interrogazioni con raggruppamento E possibile
DettagliE possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione.
Ordinamento E possibile ordinare le righe del risultato di una interrogazione attraverso la clausola order by, a chiusura di una interrogazione. order by AttrdiOrdinamento [asc desc] {, AttrdiOrdinamento
DettagliSQL Esempi /10/2017 Basi di dati - SQL 1
SQL Esempi 23-26/10/2017 Basi di dati - SQL 1 Esercitazioni pratiche Per SQL è possibile (e fondamentale) svolgere esercitazioni pratiche Verranno anche richieste copme condizione per svolgere le prove
DettagliInterrogazioni. 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
DettagliSQL Esempi. 24/10-7/11/2016 Basi di dati - SQL 1
SQL Esempi 24/10-7/11/2016 Basi di dati - SQL 1 Esercitazioni pratiche Per SQL è possibile (e fondamentale) svolgere esercitazioni pratiche Verranno anche richieste copme condizione per svolgere le prove
DettagliGestione dei valori nulli
Gestione dei valori nulli La gestione dei valori nulli, a seconda dell implementazione, avviene attraverso una logica a due valori come in SQL-89, o a tre valori (vero, falso, unknown) come in SQL-2. In
DettagliEsercitazione 2 SQL 1 (installazione MySQL)
Esercitazione 2 SQL 1 (installazione MySQL) Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E2-1 La famiglia Base di dati contenete la seguente informazioni: Informazione sulle persone: Nome Sesso Anno
DettagliEsercitazione: Il DBMS MySQL
Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Domenico Fabio Savo 1 Cosa vedremo 1. Presentazione del DBMS MySQL 2. Come scaricare
DettagliInterpretazione delle query nidificate
Interpretazione delle query nidificate Per analizzare il risultato di una interrogazione nidificata si può supporre di valutare prima il risultato dell interrogazione nidificata (query interna) per poi
DettagliVincoli interrelazionali
Vincoli interrelazionali Politiche associate alla cancellazione (comando delete): cascade tutte le corrispondenti righe della tabella interna vengono cancellate. set null all attributo referente viene
DettagliQueries su più tabelle
Informatica Generale (AA 07/08) Corso di laurea in Scienze della Comunicazione Facoltà di Lettere e Filosofia Università degli Studi di Salerno : SQL (2) Tabelle mult., variabili, aggreg, group Prof. Alberto
DettagliEsercitazione 2 SQL 1 (installazione MySQL)
Esercitazione 2 SQL 1 (installazione MySQL) Basi di dati - prof. Silvio Salza - a.a. 2017-2018 E2-1 La famiglia Base di dati contenete la seguente informazioni: Informazione sulle persone: Nome Sesso Anno
Dettagli4 SQL : Interrogazioni nidificate
Corso di Laurea in Ingegneria Gestionale SAPIENZA Università di Roma Esercitazioni del corso di Basi di Dati Prof.ssa Catarci e Prof.ssa Scannapieco Anno Accademico 2010/2011 Andrea Marrella Ultimo aggiornamento
DettagliSQL /10/2016 Basi di dati - SQL 1
SQL 24-27/10/2016 Basi di dati - SQL 1 Esercitazioni pratiche Per SQL è possibile (e fondamentale) svolgere esercitazioni pratiche Verranno anche richieste copme condizione per svolgere le prove parziali
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezioni 6 7 Raffaella Gentilini 1 / 46 Sommario 1 Subquery (o Interrogazioni Nidificate) Interrogazioni Annidate con Predicati di Confronto Interrogazioni Annidate con
DettagliSQL operazioni sui dati: interrogazioni con join e prodotti cartesiano
SQL operazioni sui dati: interrogazioni con join e prodotti cartesiano Selezione, proiezione e join Le istruzioni SELECT : con una sola relazione nella clausola FROM permettono di realizzare: selezioni,
DettagliSQL e algebra relazionale
SQL e algebra relazionale Il linguaggio SQL consente una maggiore espressività dell algebra relazionale grazie a costrutti che permettono: di definire join più sofisticati di ordinare le righe dei risultati
DettagliSQl come DML. Angelo Chianese,, Vincenzo Moscato, Antonio Picariello,, Lucio Sansone
SQl come DML Angelo Chianese,, Vincenzo Moscato, Antonio Picariello,, Lucio Sansone Basi di dati per la gestione dell'informazione 2/ed McGraw-Hill Capitolo 5 Appunti dalle lezioni SQL come DDL Sistemi
DettagliIl linguaggio SQL - Interrogazioni -
Il linguaggio SQL - Interrogazioni - Dott. Nicola Dragoni nicola.dragoni@gmail.com (Il contenuto di queste slide è stato originariamente creato dal Dott. Matteo Magnani) 1 Il linguaggio SQL Il linguaggio
DettagliBasi di Dati. S Q L Lezione 3
Basi di Dati S Q L Lezione 3 Antonio Virdis a.virdis@iet.unipi.it Sommario Binding tra query e visibilità Query annidate non scalari Tabelle come insiemi Viste 2 Query annidate di nuovo!?!) Possiamo annidare
DettagliInterrogazioni in SQL SQL. Interrogazioni in SQL. Sintassi. Significato dell interrogazione. Notazione
SQL Anno accademico 2008/2009 Interrogazioni in SQL Originariamente Structured Query Language Non esiste un unico standard SQL standard Formulazione di interrogazioni (query) è parte del Data Manipulation
DettagliInterrogazioni 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
Dettagli4.SQL QUERY. Fare una query significa fare delle ricerche sul nostro database.
4.SQL QUERY >definizione A cura di: Celora Luca Fare una query significa fare delle ricerche sul nostro database. >strumenti da usare SELECT //sceglie le colonne da visualizzare FROM //indica da quali
DettagliTrasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4: SQL-2, seconda parte.
Trasparenze rielaborate da Atzeni, Ceri, Paraboschi, Torlone Basi di dati McGraw-Hill, 1999 Capitolo 4: SQL-2, seconda parte 11/03/2005 Maternità Legami logici Paternità Madre Luisa Luisa Anna Anna Padre
DettagliCorso di Basi di Dati
Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Il Linguaggio SQL SQL (Structured Query Language) è il linguaggio di riferimento per le basi di dati
DettagliIdoneita Informatica. Sistemi per la gestione di basi di Dati
Idoneita Informatica Sistemi per la gestione di basi di Dati Prof. Mauro Gaspari mauro.gaspari@unibo.it Rielaborazione delle slide del Dott. Matteo Magnani e del Dott. Nicola Dragoni 1 Sistema Informativo
DettagliSQL - 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
DettagliINFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno
: SQL (3) Tabelle multiple, variabili, operatori di aggregazione QUERIES SU PIU TABELLE Queries su più tabelle 17 mar 010 Dia 3 17 mar 010 Dia 4 Per formulare un interrogazione su più tabelle, la clausola
DettagliEsercitazione 1. ogni tupla contribuisce al risultato: Impiegato Reparto Rossi. Bruni. Bianchi
Esercitazione 1 Rossi A Neri ianchi A runi Rossi A Neri runi ianchi runi ogni tupla contribuisce al risultato: join completo 1 Un join completo con n x m tuple Rossi A Neri A runi Rossi Rossi runi Neri
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 4.2 e proiezione 1 Prerequisiti Creazione e gestione tabelle Uso ambiente SQL Concetto di schema Operazioni di algebra relazionale 2 1 Introduzione In questa Unità
DettagliInterrogazioni nidificate
Interrogazioni nidificate Nella clausola where si possono utilizzare valori prodotti da altre istruzioni select utilizzando any (qualsiasi) o all (tutti) insieme agli operatori di confronto Trovare nome,
DettagliQuery. Query (Interrogazioni) SQL SQL. Sintassi. Interrogazioni in SQL
Ultima modifica: 11/03/2010 SQL Anno accademico 2009/2010 Query (Interrogazioni)! È necessario un modo per interrogare le basi di dati, cioè per estrarre conoscenza! Per reperire le informazioni di interesse
DettagliConsideriamo lo schema relazionale
Andrea Gasparetto Consideriamo lo schema relazionale Sulle stringhe WHERE Expr LIKE pattern Il pattern può contenere caratteri e i simboli speciali % sequenza di 0 o più caratteri qualsiasi _ un carattere
DettagliSQL - Structured Query Language
SQL - Structured Query Language Lab 05 Alessandro Lori Università di Pisa 27 Aprile 2012 Riepilogo esercitazione precedente Operatori insiemistici (UNION, INTERSECT, EXCEPT) Riepilogo esercitazione precedente
DettagliCorso di Basi di Dati
Corso di Basi di Dati Il Linguaggio SQL Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Il Linguaggio SQL SQL (Structured Query Language) è il linguaggio di riferimento per le basi di dati
DettagliEsercitazione 6 SQL 3
Esercitazione 6 SQL 3 Basi di dati - prof. Silvio Salza - a.a. 2017-2018 E6-1 Schema della base di dati Customers (CustomerID, ComapnyName, City, Phone) Employees (EmpoyeeID, LastName, FirstName, HireDate,
DettagliSQL [2] Concetti avanzati di SQL. Esempi di interrogazioni
SQL [2] Concetti avanzati di SQL 2 Esempi di interrogazioni 3 Esempi di interrogazioni 4 Esempi di interrogazioni 5 Confronti che coinvolgono NULL NULL può voler dire: valore sconosciuto (esiste ma non
Dettagliformulare in SQL una interrogazione per ciascuno dei seguenti punti:
Basi di Dati Esercitazione SQL 20 maggio 2005 Paolo Cappellari Considerando la seguente base di dati: Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello)
DettagliData Management Software. Il linguaggio SQL. Query Innestate. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003
DB2 Data Management Software Il linguaggio SQL Query Innestate Paolo Avallone Sr Consulting IT Specialist DB2, Data Management 10 Settembre 2003 LEGGERE LE SEGUENTI ATTENZIONI Le informazioni contenute
DettagliLinguaggi 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
DettagliLinguaggi 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
DettagliLinguaggio SQL: fondamenti
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
DettagliD B M G. Linguaggio SQL: fondamenti. Operatori insiemistici. Operatore UNION Operatore INTERSECT Operatore EXCEPT
Linguaggio SQL: fondamenti Operatori insiemistici Operatore UNION Operatore INTERSECT Operatore EXCEPT 2007 Politecnico di Operatori insiemistici Operatore UNION Operatore insiemistico di unione A UNION
DettagliBasi 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
DettagliBasi di Dati. Esercitazione SQL. Paolo Papotti. 19 maggio 2005
Basi di Dati Esercitazione SQL 19 maggio 2005 Paolo Papotti Considerando la seguente base di dati: Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello) Catalogo
DettagliLinguaggio SQL: fondamenti D B M G
Linguaggio SQL: fondamenti Operatori insiemistici Operatore UNION Operatore INTERSECT Operatore EXCEPT Operatore UNION Operatore insiemistico di unione A UNION B Esegue l unione delle due espressioni relazionali
DettagliEsercitazione: Il DBMS MySQL
Laurea in Ingegneria Informatica SAPIENZA Università di Roma Insegnamento di Basi di Dati Esercitazione: Il DBMS MySQL Domenico Fabio Savo 1 Cosa vedremo 1. Presentazione del DBMS MySQL 2. Come scaricare
DettagliSQL - Sottointerrogazioni
una delle ragioni che rendono SQL un linguaggio potente è la possibilità di esprimere interrogazioni più complesse in termini di interrogazioni più semplici, tramite il meccanismo delle subqueries (sottointerrogazioni)
DettagliStructured 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
DettagliBasi di Dati. Esercitazione SQL. 17 novembre 2011
Basi di Dati Esercitazione SQL 17 novembre 2011 Esercitazione 2 Considerando la seguente base di dati: Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello)
Dettagli(Lezione SQL 3) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione. Università degli Studi di Padova
Università degli Studi di Padova Corso di Laurea Magistrale in Bioingegneria A.A. 2010-20112011 INFORMATICA SANITARIA (Lezione SQL 3) Barbara Di Camillo Dipartimento di Ingegneria dell Informazione Università
DettagliInterrogazioni nidificate
Interrogazioni nidificate Trovare nome, cognome e matricola degli studenti che non hanno fatto esami select Matricola,Nome,Cognome from studenti where matricola all (select studente group by studente)
DettagliIl linguaggio SQL: query innestate
Il linguaggio SQL: query innestate Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: SQLc-subquery.pdf Sistemi Informativi L-A DB di riferimento
DettagliCorso sul linguaggio SQL
Corso sul linguaggio SQL Modulo L2B (SQL) 4.1 Operazioni insiemistiche 1 Prerequisiti Creazione e gestione tabelle Uso ambiente SQL Cenni di algebra relazionale 2 1 Introduzione In questa Unità iniziamo
DettagliInterrogazioni in SQL
Interrogazioni in SQL Corso di Basi di Dati 4 dicembre 2013 1 Interrogazioni sullo schema aziendale 1. Ottenere i nomi dei dipartimenti dislocati in piú sedi. 2. Ottenere il numero di supervisori. 3. Produrre
DettagliSeconda esercitazione su SQL (con soluzioni) Basi di dati A.A. 2017/18 Maurizio Lenzerini
Seconda esercitazione su SQL (con soluzioni) Basi di dati A.A. 2017/18 Maurizio Lenzerini La base di dati programmatore(codice, nome, categoria) programma(id, anno, linguaggio) autore(codice, id) Osservazioni:
DettagliPrincipi di Progettazione del Software a.a Il linguaggio SQL. Il Linguaggio SQL
Principi di Progettazione del Software a.a. 2017-2018 Ing. Università del Salento Il Linguaggio SQL Due componenti principali: Ø DDL (Data Definition Language) Contiene i costrutti necessari per la creazione/modifica
DettagliProgettazione di Sistemi Informatici
Progettazione di Sistemi Informatici OUTER JOIN e SUBQUERY Domenico Diacono Corso ADM Gennaio 2008 A che punto siamo Abbiamo visto la sintassi delle principali query SQL e delle istruzioni per l inserimento
DettagliInformatica 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
DettagliEsercitazione 2 SQL.
Esercitazione 2 SQL foglia@iet.unipi.it DB Riferimento Consideriamo i seguenti schemi di una base di dati relazionale: DIPARIMENTI(CodiceDipartimento, Nome, Indirizzo, Citta, NumeroDipendenti, CostiTotaliAnnui,
Dettaglied SQL 10 Novembre 2009
Basi di Dati Esercitazione Algebra Relazionale ed SQL 10 Novembre 2009 Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello) Catalogo (Fornitore, Prodotto,
DettagliBasi di Dati Corso di Laura in Informatica Umanistica
Basi di Dati Corso di Laura in Informatica Umanistica Appello del 28/06/2010 Parte 1: Algebra Relazionale e linguaggio SQL Docente: Giuseppe Amato Sia dato il seguente schema di base di dati per la gestione
DettagliEsercitazione 3 SQL 2
Esercitazione 3 SQL 2 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E3-1 Schema della base di dati Persone (Nome, Sesso, Anno, Città) Discendenza (Genitore, Figlio) Stato (Città, Inizio, Fine, Stato)
DettagliBasi di Dati: Corso di laboratorio
Basi di Dati: Corso di laboratorio Lezione 3 Raffaella Gentilini 1 / 52 Sommario 1 Il DML di SQL: Interrogazione di una BD 2 / 52 Data Manipulation Language (DML) Istruzioni del DML Le istruzioni del DML
DettagliBasi di Dati. Esercitazione Algebra Relazionale. 16 maggio 2008
Basi di Dati Esercitazione Algebra Relazionale 16 maggio 2008 Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello) Catalogo (Fornitore, Prodotto, Costo) con
DettagliUso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26
Uso delle variabili di alias SQL slide aggiuntive Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione educazione Non solo per disambiguare la notazione
DettagliEsercitazione 1. ogni tupla contribuisce al risultato: Impiegato Reparto Rossi. Bruni. Bianchi
Esercitazione 1 Rossi A Neri ianchi A runi Rossi A Neri runi ianchi runi ogni tupla contribuisce al risultato: join completo 1 Un join completo con n x m tuple Rossi A Neri A runi Rossi Rossi runi Neri
DettagliCorso di Basi di Dati
Corso di Laurea in Ingegneria Gestionale Sapienza Università di Roma Corso di Basi di Dati A.A. 2016/2017 4 SQL : Structured Query Language Tiziana Catarci Ultimo aggiornamento : 22/02/2016 SQL : Structured
DettagliLaboratorio di Basi di Dati SQL avanzato
Laboratorio di Basi di Dati SQL avanzato Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Interrogazioni nidificate Syntax: SELECT {* [, ]} FROM [,
Dettagli