Data management a.a. 2009-2010. Il linguaggio SQL



Похожие документы
Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Gli operatori relazionali

Istruzioni DML di SQL

SQL: definizione schema

SQL. Linguaggio di interrogazione per basi di dati relazionali. Relazione = tabella con attributi (a 1, a 2,, a n ): Funzionalità principali di SQL:

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Prova scritta. Mercoledì 11 Febbraio Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008

1. Schema concettuale della base di dati Lo schema concettuale (o statico) è uno dei due schemi del progetto concettuale di un sistema informativo.

Basi Di Dati, 09/12/2003

Prova scritta. Mercoledì 23 Luglio Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008

Sistemi per la gestione di database: MySQL ( )

Data Management Software. Il linguaggio SQL. Raggruppamenti. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management Marzo 2004

COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA.

Prova scritta. Giovedì 02 Ottobre Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008

SQL - Funzioni di gruppo

Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi

SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE

Introduzione ai database relazionali

ESAME di INFORMATICA e ARCHIVIAZIONE

1 Database universitario 1.1 Elenco tabelle PERSONA (ID, is_studente, is_docente, nome, cognome) STUDENTE (matricola, persona references persona(id))

SQL (STRUCTURED QUERY LANGUAGE)

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Prova Scritta di Basi di Dati

Gli attributi di STUDENTE saranno: Matricola (chiave primaria), Cognome, Nome.

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Il linguaggio SQL. ing. Alfredo Cozzi 1

Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola:

1) Semplicissimi esercizi introduttivi

ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7

SQL/OLAP. Estensioni OLAP in SQL

Esercizi SQL. Dato il seguente schema di una base di dati dove gli attributi che compongono la chiave sono scritti in grassetto

M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

Basi di Dati Corso di Laura in Informatica Umanistica

DBMS (Data Base Management System)

Interrogazioni complesse. SQL avanzato 1

Lezione V. Aula Multimediale - sabato 29/03/2008

Facoltà di Ingegneria Corso di Laurea in Ingegneria Gestionale Esame di Sistemi Informativi e Basi di Dati 6 crediti Aprile 2006

Corso di Laboratorio di Basi di Dati

Corso di Basi di Dati

Per visualizzare e immettere i dati in una tabella è possibile utilizzare le maschere;

CONCETTO DI ANNIDAMENTO

UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME

Basi di dati II prova intermedia 16 Marzo 2006 Compito 1

********************* MODIFICA STRUTTURA DI UNA TABELLA (inserimento di un nuovo campo) ALTER TABLE Personale ADD Nascita date;

Il linguaggio SQL: query innestate

a.a. 2012/13 12 Novembre 2012 Preparazione al Test in itinere, Compito A 1. Modellare tramite uno schema entità- relazione la seguente base di dati:

a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto.

Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1

Esprimere in algebra (ottimizzata), calcolo relazionale la seguente query:

Le Basi di Dati. Le Basi di Dati

Capitolo 13. Interrogare una base di dati

Operazioni sui database

Basi di Dati. Esercitazione SQL. Ing. Paolo Cappellari

Archivi e Basi di Dati

Si formulino le seguenti interrogazioni tramite il linguaggio SQL:

Il seguente esempio ha lo scopo di illustrare i 3 tipi di relazione 1:1,1:N,N:N. Tabella Conto: Tabella Conto:

I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:

Structured Query Language parte 1

User Tools: DataBase Manager

1. Per ogni film in cui appaiono solo attori nati prima del 1970 restituire il titolo del film.

Basi di dati. Il Linguaggio SQL. K. Donno - Il Linguaggio SQL

Il Domino Character Il domino CHARACTER permette di definire attributi che contengono un singolo carattere o stringhe di caratteri di lunghezza

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

Dispensa di database Access

Basi di dati 9 febbraio 2010 Compito A

MAX, SUM, AVG, COUNT)

Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1

Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico:

Gestione Voti Scolastici

ALGEBRA RELAZIONALE RIEPILOGO

Esame di Basi di Dati, SOLUZIONE APPELLO 12/01/2010

Esercitazione Simulazione Compito

Basi di Dati. Esercizi di SQL (2) - Soluzioni

Definizione di domini

Data la seguente tabella :

MODELLO E/R. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Esercitazione su SQL

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m

Il linguaggio SQL e Access

Structured Query Language. Informatica Generale - SQL Versione 1.0, aa p.1/172

Caratteristiche dei linguaggi per Database

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 2012/13

Introduzione a phpmyadmin

Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m

Volumi di riferimento

SQL. Esercitazione. Contatti: Dott. Domenico Fabio Savo

Esame Basi di Dati. 21 Gennaio 2013

Data warehousing con SQL Server

Soluzioni dei temi dell, Esame di Stato

SQL (STRUCTURED QUERY LANGUAGE)

Uso delle variabili di alias. SQL slide aggiuntive. Interrogazione 25. Interrogazione 26

DATABASE RELAZIONALI

Unità B2.2. Diagrammi E-R

MODULO 5 DATA BASE PROGRAMMA. Progettazione rapida introduzione alla progettazione di DB

Транскрипт:

Data management a.a. 2009-2010 Il linguaggio SQL 1

Modello di database E' un database generico con anagrafica e movimenti di uso molto frequente: per esempio, clienti e fatture, studenti ed esami sostenuti, contribuenti e versamenti di imposta, prodotti e movimenti di magazzino, conti e movimenti contabili, ecc.) Due entità : Anagrafica e Movimento Associazione : uno a molti Ogni Anagrafica può essere relativa a uno o più Movimenti. Ogni Movimento deve essere riferito a una sola Anagrafica 2

Tabelle derivate Anagrafica (Codice, Nome, Indirizzo) Movimento (Numero, Descrizione, Data, Importo, Codice) Codice : chiave della tabella Anagrafica Numero : chiave della tabella Movimento Codice : chiave esterna della tabella Movimento 3

Le operazioni relazionali nel linguaggio SQL Selezione SELECT * FROM NomeTabella WHERE Condizione Date le tabelle: Anagrafica (Codice, Nome, Indirizzo) Movimento (Numero, Descrizione, Data, Importo, Codice) si vuole ottenere l'elenco delle anagrafiche con Indirizzo = Milano Select * From Anagrafica Where Indirizzo = Milano 4

Le operazioni relazionali nel linguaggio SQL Proiezione SELECT Colonna1, Colonna2, FROM NomeTabella si vuole ottenere l elenco dei codici e dei nomi delle anagrafiche. Select Codice, Nome From Anagrafica si vuole ottenere l elenco dei movimenti con data e importo Select Data, Importo From Movimento 5

Le operazioni relazionali nel linguaggio SQL Congiunzione SELECT * FROM Tabella1, Tabella2 WHERE Tabella1.Attrib1 = Tabella2.Attrib2 si vuole ottenere l elenco dei movimenti con i dati anagrafici ad essi relativi (Operazione relazionale: congiunzione di Anagrafica su Codice e di Movimento su Codice) Select * From Anagrafica, Movimento Where Anagrafica.Codice= Movimento.Codice 6

Le operazioni relazionali nel linguaggio SQL Uso di più operatori SELECT Colonna1, Colonna2,... FROM Tabella1, Tabella2 WHERE Tabella1.Attrib1 = Tabella2.Attrib2 AND Condizione si vuole ottenere l elenco dei movimenti con Nome e Importo riferiti alle anagrafiche aventi un indirizzo prefissato Select Nome, Importo From Anagrafica, Movimento Where Anagrafica.Codice= Movimento.Codice And Indirizzo = [Quale Indirizzo] 7

Funzione COUNT La funzione COUNT restituisce il numero di righe presenti in una tabella. Select Count (*) From NomeTabella Select Count (NomeAttributo) From NomeTabella Esempio: Numero delle persone registrate nella tabella delle anagrafiche aventi un indirizzo prefissato Select Count(*) From Anagrafica Where Indirizzo = [Quale Indirizzo] 8

Funzione SUM Restituisce la somma di tutti i valori contenuti in una colonna specificata (l attributo utilizzato nel calcolo deve essere di tipo numerico) Select Sum (NomeAttributo) From NomeTabella Esempio: Importo totale dei movimenti riferiti a un codice prefissato Select Sum(Importo) From Movimento Where Codice = [Quale Codice] 9

Esercizi si vuole ottenere l elenco dei movimenti relativi al codice 0358. Select * From Movimento Where Codice = 0358 si vuole ottenere l elenco dei movimenti con codice, data e importo Select Codice, Data, Importo From Movimento 10

si vuole ottenere l elenco con Nome anagrafico e Numero di registrazione dei movimenti Select Nome, Numero From Movimento, Anagrafica Where Movimento.Codice = Anagrafica.Codice Data dei movimenti con Indirizzo dell anagrafica Select Data, Indirizzo From Movimento, Anagrafica Where Movimento.Codice = Anagrafica.Codice 11

Numero di registrazione dei movimenti riferiti all anagrafica avente il Nome Marco Select Numero From Movimento, Anagrafica Where Movimento.Codice = Anagrafica.Codice And Nome = Marco Nome anagrafico, Data e Importo dei movimenti riferiti a un indirizzo prefissato Select Nome, Data, Importo From Movimento, Anagrafica Where Movimento.Codice = Anagrafica.Codice And Indirizzo = [prefissato] 12

Calcolare il numero dei movimenti con importo superiore a 10.000. Select Count(*) From Movimento Where Importo > 10.000 Calcolare la somma degli importi per i movimenti che si riferiscono alle anagrafiche della persona di nome Marco e in data 10/02/2000. Select Sum(Importo) From Movimento, Anagrafica Where Movimento.Codice = Anagrafica.Codice And Nome = Marco And Data = 10/02/2000 13

ESERCIZIO SQL Dato il seguente schema relazionale: Regista(Nome, DataNascita, Nazionalita`) Film(Titolo, NomeRegista, Anno) Proiezione(Nomecinema, Nomefilm, Citta`) Selezionare le Nazionalita`dei registi che hanno diretto dei film nel 1992 ma non hanno diretto film nel 1993. select distinct nazionalita` from Regista where Nome in (select nomeregista from Film where Anno=`1992`) and Nome not in (select NomeRegista from Film where Anno=`1993`) 14

Individuare i nomi dei registi che hanno girato nel 1993 piu` film di quanti ne avevano girati nel 1992. select NomeRegista from Film as F where Anno=`1993` group by NomeRegista having count(*) > (select count(*) from Film as F1 where F.NomeRegista=F1.NomeRegista and Anno=`1992`) 15

Individuare le date di nascita dei registi che hanno diretto film che sono stati proiettati sia a Torino che a Milano. select Datanascita from Regista join Film on (Nome=NomeRegista) where Titolo in (select NomeFilm from Proiezione where Citta=`Milano`) and Titolo in (select NomeFilm from Proiezione where Citta=`Torino`) 16