![Page 1: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/1.jpg)
Università degli Studi di Padova Università degli Studi di Padova
Corso di Laurea Magistrale in BioingegneriaCorso di Laurea Magistrale in Bioingegneria
A.A. 2010A.A. 2010--20112011
INFORMATICA SANITARIAINFORMATICA SANITARIA(Lezione SQL 2)
Barbara Di CamilloDipartimento di Ingegneria dell’Informazione
Università degli Studi di PadovaVia Ognissanti 72, 35129 Padova
e-mail: [email protected]
Si ringrazia il Dott. Andrea Facchinetti per gli utili suggerimenti
![Page 2: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/2.jpg)
• Breve introduzione a Ms Access (Office07)
• Esercizi introduttivi
• Esercizi su interrogazioni
Lezione SQL 2
• Esercizi su interrogazioni
![Page 3: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/3.jpg)
Breve guida all’utilizzodi Access (Office07)
NOTA!!!
In questo corso NON si vuole insegnare l’uso di MsAccess. Esso è solo un tool user-friendly che puòessere utilizzato per la didattica di SQL.
![Page 4: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/4.jpg)
Creare un nuovo database
1. Creiamo un nuovo database su cui lavorare
2. Lo chiamiamo “lezione01”, e premiamo “create”
![Page 5: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/5.jpg)
1. Tasto destro del mouse su “Table1”, premiamo su “close” in modo da chiudere la tabella Table1 che ci viene proposta di default
Eliminare dal db le tabelle di default
![Page 6: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/6.jpg)
Scrivere un comando in SQL (1/5)
1. Andiamo su “create” 2. Premiamo su“Query Design”
![Page 7: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/7.jpg)
1. Chiudiamo questa finestra
Scrivere un comando in SQL (2/5)
![Page 8: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/8.jpg)
1. Premiamo su “SQL” in modo da passare alla
Scrivere un comando in SQL (3/5)
1. Premiamo su “SQL” in modo da passare alla modalità SQL
![Page 9: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/9.jpg)
Scrivere un comando in SQL (4/5)
Qui finalmente possiamo scrivere le Query:• sia quelle di tipo CREAZIONE/MODIFICA/CANCELLAZIONE di t abelle; • sia quelle di INTERROGAZIONE.
![Page 10: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/10.jpg)
Una volta scritto il comando devo selezionare il menù “Design” …
Scrivere un comando in SQL (5/5)
.. e per eseguirlo devo fare click su !
![Page 11: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/11.jpg)
Questo, per es., è risultato di una query di interrogazione.
Visualizzare il risultato del comando
![Page 12: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/12.jpg)
Posso salvare l’istruzione
Salvataggio del comando
![Page 13: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/13.jpg)
E rieseguirla facendo doppio click sul nome dell’istruzione
Recupero del comando salvato
![Page 14: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/14.jpg)
• Breve introduzione a Ms Access (Office07)
• Esercizi introduttivi
• Esercizi su interrogazioni
Lezione SQL 2
• Esercizi su interrogazioni
![Page 15: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/15.jpg)
Esercizio 1Creazione e gestione di tabelle
Utilizzando SQL Utilizzando SQL a) Creare (nell’ordine) le Tabelle autore edizioni e libri specificando
le relazioni tra tabelle. Verificare poi da Access di aver completato correttamente l’esercizio
b) Aggiungere l’attributo biografia alla tabella autore (tipo char)c) Cambiare il tipo di dato all’attributo biografia da tipo char a tipo
textd) Inserire nella tabella edizioni tre record: (1, einaudi); (2,
feltrinelli); (3, mondadori)e) Cancellare il record corrispondente a id_editore=1 f) modificare il nome corrispondente a id_editore=3 con einaudi
![Page 16: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/16.jpg)
1. Andiamo su “Database Tools”
Per vedere le associazioni tra tabelle
2. Premiamo su “Relationships”
![Page 17: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/17.jpg)
Per vedere le associazioni tra tabelle
Ecco lo schema con le associazioni
![Page 18: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/18.jpg)
• Breve introduzione a Ms Access (Office07)
• Esercizi introduttivi
• Esercizi su interrogazioni
Lezione SQL 2
• Esercizi su interrogazioni
![Page 19: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/19.jpg)
La base di dati di esempio
• Sintesi dei ricoveri effettuati da un certo centro ospedaliero
• Analisi delle prestazioni effettuate e dei relativi costi• Analisi delle prestazioni effettuate e dei relativi costi
• Informazioni aggiuntive legate al centro
Scaricare il DB dal sito delle lezioni e salvarlo sulla home
![Page 20: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/20.jpg)
Prima di qualsiasi altra operazione ABILITARE I CONTENTUTI!!!!
Premere su “Options”
![Page 21: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/21.jpg)
Prima di qualsiasi altra operazione ABILITARE I CONTENTUTI!!!!
Abilitare i contenuti!!!Abilitare i contenuti!!!
![Page 22: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/22.jpg)
La base di dati di esempio
![Page 23: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/23.jpg)
Esercizio 2 Query semplici con una sola tabella
a) Realizza una Query che interroghi la Tabella GENERALE erestituisca quattro colonne dove sono riportati nome, cognome,comune, provincia
b) Realizza una Query che interroghi la Tabella GENERALE erestituisca una Tabella di una colonna dove sono riportate leprovince senza duplicatirestituisca una Tabella di una colonna dove sono riportate leprovince senza duplicati
c) Realizza una Query che restituisca e salvi una Tabella(‘Generale_PD’) di tre colonne dove sono riportati nome,cognome, comune per i soli residenti in Provincia di Padova
d) Realizza una Query che restituisca la tabella “Prescrizioni” conin aggiunta una nuova colonna, detta “costo_aggiornato” cheriporti il costo delle prescrizioni maggiorato del 10%. Salva latabella come “prescrizioni_new”.
![Page 24: (Lezione SQL 2) - DEI · 2011-01-12 · (Lezione SQL 2) Barbara Di Camillo Dipartimento di Ingegneria dell’Informazione Università degli Studi di Padova Via Ognissanti 72, 35129](https://reader034.vdocuments.pub/reader034/viewer/2022050203/5f56dca08e87ff15262ffd54/html5/thumbnails/24.jpg)
Esercizio 3Funzioni di aggregazione e predicati di WHERE
a) Trovare il minimo, il massimo, la media e la somma del costo delle prescrizioni e il numero totale di prescrizioni (una sola query)
b) Trovare quante persone (nella tab. “generale”) hanno il cognome che inizia con la lettera R
c) Trovare il codice fiscale del dipendente (attualmente assunto) con più anni di anzianità