1) Semplicissimi esercizi introduttivi
|
|
|
- Agata Morandi
- 10 anni fa
- Просмотров:
Транскрипт
1 Esercizi SQL 1
2 1) Semplicissimi esercizi introduttivi Impiegato(nome, titolo, età, salario, dip) Acquisto(idCliente, datadiordinazione, item, quantità, prezzo) Cliente(id, nome, cognome, città, stato) 2
3 1) Selezionare il nome, l età e il salario degli impiegati con più di 50 anni SELECT nome, età, salario FROM impiegato WHERE età > 50 2) Estrarre tutte le informazioni relative agli acquisti di tende (cioè dove item=tenda) SELECT * FROM acquisto WHERE item = 'Tenda' 3
4 3) Di tutti i prodotti comprati dal cliente con id=10449 mostrare nome, prezzo e id del cliente SELECT id, item, prezzo FROM acquisto WHERE id= ) Trovare il nome, il titolo e il dipartimento degli impiegati il cui titolo comincia con Ing SELECT nome, titolo, dip FROM impiegato WHERE titolo LIKE Ing%' 4
5 5) Nome, titolo e salario di tutti coloro che hanno il titolo di programmatore e un salario >= SELECT nome, titolo, salario FROM impiegato WHERE salario >= AND Titolo = Programmatore 6) Nome e salario di tutti coloro che lavorano al dipartimento Vendite' o 'Programmazione' SELECT nome, salario FROM impiegato WHERE dip = Vendite' OR dip = 'Programmazione' 5
6 7) Selezionare tutte le diverse età degli impiegati SELECT distinct età FROM impiegato 8) Selezionare lo stipendio medio degli impiegati SELECT avg(salario) FROM impiegato 6
7 12) Estrarre i dati degli impiegati del dipartimento Vendite in ordine (ascendente) di stipendio SELECT * FROM impiegato WHERE dip = Vendite' ORDER BY salario 7
8 13) Estrarre i dati degli impiegati del dipartimento Vendite in ordine ascendente di stipendio e discendente di età (a pari stipendio) SELECT * FROM impiegato WHERE dip = Vendite' ORDER BY salari, età DESC 8
9 14) Estrarre tutti i dati degli impiegati 'Hernandez', 'Jones', 'Roberts', 'Ruiz' SELECT * FROM impiegato WHERE nome IN ('Hernandez', 'Jones', 'Roberts', 'Ruiz') Oppure WHERE nome='hernandez' OR nome='jones' OR nome='roberts' OR nome='ruiz' 9
10 Si noti che 15) Estrarre tutti i dati di tutti gli impiegati tranne 'Hernandez', 'Jones', 'Roberts e 'Ruiz Si può esprimere come SELECT * FROM impiegato WHERE nome NOT IN ('Hernandez', 'Jones', 'Roberts', 'Ruiz') 10
11 16) Estrarre tutti i dati degli impiegati di età compresa tra 30 e 40 anni SELECT * FROM impiegato WHERE età BETWEEN 30 AND 40 Oppure WHERE età >= 30 AND età <= 40 11
12 17) Estrarre, per ogni acquisto, il nome del cliente e il prezzo del prodotto SELECT nome, prezzo FROM cliente, acquisto WHERE cliente.id = acquisto.idcliente oppure SELECT nome, prezzo FROM cliente join acquisto on cliente.id = acquisto.idcliente 12
13 2) AEROPORTO (Città, Nazione, NumPiste) VOLO (IdVolo, GiornoSett, CittàPart, OraPart, CittàArr, OraArr, TipoAereo) AEREO (TipoAereo, NumPasseggeri, QtaMerci) 13
14 18) Trovare le città da cui partono voli diretti a Roma, ordinate alfabeticamente SELECT distinct CittàPar FROM Volo WHERE CittàArr= Roma ORDER BY CittàPar 19) Trovare le città con un aeroporto di cui non è noto il numero di piste SELECT Città FROM Aeroporto WHERE NumPiste IS NULL 14
15 20) Di ogni volo misto (merci e passeggeri) estrarre il codice e i dati relativi al trasporto select IdVolo, NumPasseggeri, QtaMerci from VOLO as V, AEREO as A where V.TipoAereo = A.TipoAereo and NumPasseggeri > 0 and QtaMerci > 0 select IdVolo, NumPasseggeri, QtaMerci from VOLO V inner join AEREO A on V.TipoAereo = A.TipoAereo where NumPasseggeri > 0 and QtaMerci > 0 (sintassi equivalente) 15
16 21) Le nazioni di partenza e arrivo del volo AZ274 SELECT A1.Nazione, A2.Nazione FROM (AEROPORTO A1 join VOLO on A1.Città=CittàArr) join AEROPORTO A2 on CittàPar=A2.Città WHERE IdVolo= AZ274 16
17 23) Trovare l aeroporto italiano con il maggior numero di piste Ad esempio si può usare una query annidata select Città, NumPiste from AEROPORTO where Nazione = Italia and NumPiste = ( select max(numpiste) from AEROPORTO where Nazione = Italia ) 17
18 27) Trovare il numero totale di partenze internazionali del giovedì da tutti gli aeroporti SELECT count(*) FROM (AEROPORTO as A1 join VOLO on CittàPar=A1.Città) join AEROPORTO as A2 on CittàArr=A2.Città WHERE A1.Nazione <> A2.Nazione and GiornoSett = Giovedì 18
19 28) Trovare il numero di aeroporti che hanno almeno una partenza internazionale al giovedì SELECT count( distinct CittàPar ) FROM (AEROPORTO as A1 join VOLO on CittàPar=A1.Città) join AEROPORTO as A2 on CittàArr=A2.Città WHERE A1.Nazione <> A2.Nazione and GiornoSett = Giovedì 19
20 26) Gli aeroporti da cui partono voli internazionali SELECT distinct CittàPar FROM (AEROPORTO as A1 join VOLO on CittàPar=A1.Città) join AEROPORTO as A2 on CittàArr=A2.Città WHERE A1.Nazione <> A2.Nazione Il distinct è essenziale per la chiarezza e leggibilità del risultato 20
21 18) CD (CDNumber, Title, Year, Price) Track (CDNumber,PerformanceCode, trackno) Recording (Performance, SongTitle, Year) Composer (CompName, SongTitle) Singer (SingerName, PerformanceCode) 21
22 I cantautori (persone che hanno scritto e cantato la stessa canzone). SELECT SingerName FROM ( Singer S join Recording R on S.PerformanceCode=R.Performance ) join Composer C on R.SongTitle=C.SongTitle WHERE SingerName=CompName 22
23 I titoli dei dischi che contengono canzoni di cui non si conosce l anno di registrazione SELECT Title FROM CD JOIN Track AS T ON CD.CDNumber=T.CDNumber JOIN Recording AS R ON T.PerformanceCode= R.PerformanceCode WHERE R.Year IS NULL 23
24 I pezzi del disco con numero di serie 78574, ordinati per numero progressivo, con indicazione degli interpreti. SELECT TrackNo, SingerName FROM Track JOIN Singer ON Track.PerformanceCode= Singer.PerformanceCode WHERE CDNumber=78574 ORDER BY TrackNo 24
25 Gli autori e i cantanti puri, ovvero autori che non hanno mai registrato una canzone e cantanti che non hanno mai scritto una canzone Scriviamo due query separate, poi effettuiamo l unione 25
26 SELECT CompName FROM Composer WHERE CompName NOT IN ( SELECT SingerName FROM Singer ) UNION SELECT SingerName FROM Singer WHERE SingerName NOT IN ( SELECT CompName FROM Composer) 26
27 Gli autori che non hanno mai inciso una canzone scritta da loro e i cantanti che non hanno scritto nessuna delle canzoni che hanno cantato (Si noti che include i cantanti e i cantautori puri) 27
28 SELECT CompName FROM Composer WHERE CompName NOT IN (SELECT CompName FROM Composer AS C JOIN Recording AS R ON C.SongTitle=R.SongTiltle JOIN Singer ON Performance=PerformanceCode WHERE CompName=SingerName ) 28
29 SELECT SingerName FROM Singer WHERE SingerName NOT IN (SELECT SingerName FROM Singer JOIN Recording ON Performance=PerformanceCode JOIN Composer ON Recording.SongTitle= Composer.SongTitle WHERE CompName=SingerName) 29
30 select CompName from Composer where CompName NOT IN (select CompName from Composer C join Recording R on C.SongTitle=R.SongTiltle join Singer on Performance=PerformanceCode where CompName=SingerName ) UNION select SingerName from Singer where SingerName NOT IN (select SingerName from (Singer join Recording on Performance=PerformanceCode) join Composer C on Recording.SongTitle=C.SongTitle where CompName=SingerName) 30
31 6) Catalogo di prodotti e fornitori Fornitori ( CodiceForn, Nome, Indirizzo, Città) Prodotti ( CodiceProd, Nome, Marca, Modello) Catalogo ( CodiceForn, CodiceProd, Costo) 31
32 40) Trovare i nomi dei fornitori di prodotti IBM SELECT DISTINCT F.Nome FROM Fornitori AS F, Prodotti AS P, Catalogo AS C WHERE F.CodiceForn=C.CodiceForn AND C.CodiceProd=P.CodiceProd AND P.Marca= IBM ; 32
33 41) Codici dei prodotti distribuiti da almeno 2 fornitori SELECT distinct C.CodiceProd FROM Catalogo C, Catalogo C1 WHERE C.CodForn <> C1.CodForn AND C.CodiceProd=C1.CodiceProd 33
34 43) Trovare il codice dei prodotti più costosi tra quelli distribuiti dai fornitori presenti a Roma SELECT DISTINCT C.CodiceProd FROM Fornitori AS F, Catalogo AS C WHERE F.CodiceForn=C.CodiceForn AND F.Città= Roma AND C.Costo= (SELECT MAX(Costo) FROM Fornitori AS F1, Catalogo AS C1 WHERE F1.CodiceForn=C1.CodiceForn AND F1.Città= Roma ) 34
35 7) Informazioni relative alle partite dei campionati di serie A, B, C. Ad ogni partita giocata è assegnato un codice univoco (per comodità). Ogni partita è (ovviamente) giocata da due squadre Partita(Codice, Campionato, Serie, Data, Stadio) Risultato ( Squadra, Partita, Punti, Reti ) Si noti che la registrazione dei punti è ridondante, in quanto deducibile dal confronto delle reti di squadre diverse nella stessa partita, ma molto comoda (occorrono 2 join per confrontare le reti) 35
36 45) Squadre che hanno giocato sempre e solo in serie A SELECT distinct Squadra FROM Risultato WHERE Squadra NOT IN ( SELECT distinct Squadra FROM Risultato join Partita on Partita=Codice WHERE Serie <> A ) 36
37 47) Il calendario, con i risultati, delle 34 giornate del campionato di serie A 01/ 02 in ordine cronologico select from where Data, r1.squadra, r2.squadra, r1.reti, r2.reti, Stadio Partita, Risultato r1, Risultato r2 Serie= A and Campionato= and r1.partita = Codice and r2.partita = Codice and order by Data 37
38 Con uno schema diverso è MOLTO più facile Partita ( SqCasa, SqOsp, Data, RetiCasa, RetiOsp, Campionato, Serie) 48) Il calendario, con i risultati, delle 34 giornate del campionato di serie A 01/ 02 in ordine cronologico select Data, SqCasa, SqOsp, RetiCasa from Partita where Serie= A and Campionato= order by Data 38
39 8) REGISTA ( Nome, DataNascita, Nazionalità ) ATTORE ( Nome, DataNascita, Nazionalità ) INTERPRETA ( Attore, Film, Personaggio ) FILM ( Titolo, NomeRegista, Anno) PROIEZIONE ( NomeCin, CittàCin, TitoloFilm ) CINEMA ( Città, NomeCinema, #Sale, #Posti ) 39
40 50) Nazionalità dei registi che hanno diretto qualche film nel 1992 ma non hanno diretto film nel 1993 SELECT distinct Nazionalità FROM REGISTA WHERE Nome IN ( SELECT NomeRegista FROM FILM WHERE Anno = 1992) AND Nome NOT IN ( SELECT NomeRegista FROM FILM WHERE Anno = 1993) 40
41 In alternativa si può usare EXCEPT (a patto di discriminare in base alla chiave) ma assolutamente NON un join e la condizione WHERE Anno = 1992 AND Anno <> 1993 perché la WHERE agisce a livello di TUPLA SELECT Nazionalità FROM REGISTA WHERE Nome IN ( SELECT NomeRegista FROM FILM WHERE Anno = 1992 EXCEPT SELECT NomeRegista FROM FILM WHERE Anno = 1993 ) 41
42 NON si può usare la EXCEPT direttamente se nella target list non è incluso l attributo discriminante per l esclusione SELECT Nazionalità FROM FILM join REGISTA on NomeRegista=Nome WHERE Anno = 1992 EXCEPT SELECT Nazionalità FROM FILM join REGISTA on NomeRegista=Nome WHERE Anno = 1993 Un solo regista di nazionalità X che abbia girato un film nel 93 farebbe sparire dalla soluzione il valore X, anche se molti altri suoi connazionali fossero tali da soddisfare l interrogazione. Attenzione: in SQL gli operatori insiemistici eliminano i duplicati (come se davanti a Nazionalità ci fosse distinct) 42
43 51) Le date di nascita dei registi che hanno diretto film in proiezione sia a Torino sia a Milano select distinct DataNascita from REGISTA join FILM on Nome=NomeRegista where Titolo in ( SELECT TitoloFilm FROM PROIEZIONE WHERE CittàCin= Milano ) AND Titolo in ( SELECT TitoloFilm FROM PROIEZIONE WHERE CittàCin= Torino ) 43
44 54) Trovare gli attori che hanno interpretato più personaggi in uno stesso film (+ di 1!!) select distinct P1.Attore from INTERPRETA P1, INTERPRETA P2 where P1.Attore = P2.Attore and P1.Film = P2.Film and P1.Personaggio <> P2.Personaggio
45 57) Film di registi italiani in cui non recita nessun italiano select Titolo from FILM join REGISTA on Nome=NomeRegista where Nazionalità = Italiana EXCEPT select NomeFilm from INTERPRETA join ATTORE on Nome=NomeAttore where Nazionalità = Italiana select Titolo from FILM join REGISTA on Nome=NomeRegista where Nazionalità = Italiana and Titolo NOT IN ( select NomeFilm from INTERPRETA join ATTORE on Nome=NomeAttore where Nazionalità = Italiana ) 45
46 58) Registi che hanno recitato in (almeno) uno dei film che hanno diretto SELECT DISTINCT NomeRegista FROM FILM join INTERPRETA on Titolo=Film WHERE NomeRegista=Attore 46
47 13) Dato il seguente schema relazionale OFFICINA(ID, Sede, Direttore, Fatturato-92) RIPARAZIONE ( ID_OFFICINA,ID_CLIENTE, ID_RIPAR, Tipo_Riparazione, Tipo_Auto, Data, Pagamento) CLIENTE(ID_CLIENTE, Nome, Indirizzo) 47
48 Determinare nome e indirizzo dei clienti che hanno pagato qualche riparazione relativa ad auto Fiat il cui importo (individuale) sia superiore a 3000 in officine fuori Milano SELECT Nome, Indirizzo FROM Cliente WHERE ID_cliente IN ( SELECT ID_cliente FROM Riparazione WHERE Pagamento > 3000 AND Tipo_auto LIKE %FIAT% AND ID_officina NOT IN ( SELECT Numero FROM Officina WHERE Sede LIKE %MILANO )) 48
49 Determinare nome e indirizzo dei clienti che hanno pagato più di dieci riparazioni nel 1991 ma non hanno pagato alcuna riparazione nel 1992 SELECT Nome, Indirizzo FROM Cliente WHERE ID_cliente IN ((SELECT ID_cliente FROM Riparazione WHERE Data between and GROUP BY ID_cliente HAVING count(*) > 10) EXCEPT (SELECT ID_cliente FROM Riparazione WHERE Data between and )) 49
50 15) Cliente(CodCliente, Nome, Indirizzo, Città) Ordine(Numero, CodCliente, Data, Importo) PartiOrdine(NroOrdine, CodProdotto, Quantità, PrezzoUnitario) Prodotto(Codice, Descrizione, QtaMagazzino) 50
51 Nomi dei clienti che non hanno mai ordinato prodotti che siano SELECT Nome stati ordinati anche dalla ditta FROM Cliente Brambilla WHERE Nome not in ( SELECT nome FROM cliente c, ordine o, partiordine WHERE c.codcliente=o.codcliente AND numero=nroordine AND codprodotto in ( SELECT codprodotto FROM cliente c, ordine o, partiordine po1 WHERE nome="brambilla" AND c.codcliente=o.codcliente AND numero=nroordine)) 51
52 16) Dato il seguente schema relazionale: AGENTE( Nome, Percentuale) ARTICOLO( Nome, Descrizione, Tipo) CLIENTE( Nome, Indirizzo, Telefonoi) VENDITA( Nome-Comp, Nome-Art, Nome-Ag, Data, Quantità, Importo, Validità) 52
53 Selezionare gli Agenti che hanno venduto qualche articolo di tipo scarpa ma non hanno venduto nulla a clienti il cui indirizzo è a Milano SELECT V.NomeAg FROM ARTICOLO A, VENDITA V, CLIENTE C WHERE A.Nome=V.NomeArt and C.Nome=V.NomeComp and A.Tipo="scarpa" and Vendite.NomeAg NOT IN (SELECT Vendite.NomeAg FROM Cliente,Vendita WHERE Cliente.Nome=Vendite.NomeComp AND Cliente.Indirizzo like %Milano%" ) 53
54 17) Dato il seguente schema relazionale: AUTORE(NOME, COGNOME, Data-N, Nazionalita) AUTORELIBRO(NOME, COGNOME, SEGNATURA) LIBRO(SEGNATURA, Scaffale, Argomento, Lingua) 54
55 Selezionare il COGNOME degli autori tedeschi di libri in italiano con argomento filosofia o logica SELECT Cognome FROM Autore A, Libro L, Autorelibro AL, WHERE A.Nome=AL.Nome and A.Cognome=AL.Cognome and A.Segnatura=L.Segnatura and Nazionalita= tedesca and Lingua= italiano and (Argomento= filosofia OR rgomento= logica) 55
56 Selezionare la data di nascita degli autori italiani di libri in inglese di Argomento informatica, che non sono autori di libri di Argomento matematica 56
57 SELECT Data_N FROM Autore AS A JOIN Autorelibro ON (A.Nome=Autorelibro.Nome AND A.Cognome=Autorelibro.Cognome) JOIN Libro ON (Autorelibro.Segnatura=Libro.Segnatura) WHERE Nazionalita= IT AND Lingua= ING AND Argomento= INF AND A NOT IN ( SELECT * FROM Autorelibro AS AL JOIN Libro AS L ON (AL.Segnatura=L.Segnatura) WHERE A.Nome=AL.Nome AND A.Cognome=AL.Cognome AND Argomento= MATEMATICA ) 57
Le cose che non vogliamo vedere
Esercizi SQL 1 Le cose che non vogliamo vedere Target list miste quando non c è la clausola group by Attributi nella select o nella having che non siano anche nella group by (quando c è una clausola group
Trovare l aeroporto italiano con il maggior numero di piste
AEROPORTO (Città, Nazione, NumPiste) VOLO (IdVolo, GiornoSett, CittàPart, OraPart, CittàArr, OraArr, TipoAereo) AEREO (TipoAereo, NumPasseggeri, QtaMerci) Datalog - Aeroporti da cui non partono aerei per
CAPITOLO 4 ESERCIZI SU SQL
CAPITOLO 4 ESERCIZI SU SQL (le soluzioni sono riportate da pag. 5 in poi (Nota: gli esercizi non sono sempre in ordine di difficoltà Esercizio 1 Si prendano tutti gli schemi relazionali considerati negli
Basi di Dati. Esercitazione SQL. Ing. Paolo Cappellari
Basi di Dati Esercitazione SQL Ing. Paolo Cappellari Esercitazione Considerando la seguente base di dati: Fornitori (CodiceFornitore, Nome, Indirizzo, Città) Prodotti (CodiceProdotto, Nome, Marca, Modello)
Capitolo 4. Soluzione: Soluzione: Create domain STRING as character varying (256) default sconosciuto not null
Capitolo 4 Esercizio 4.1 Ordinare i seguenti domini in base al valore massimo rappresentable, supponendo che integer abbia una rappresentazione a 32 bit e smallint a 16 bit: numeric(12,4), decimal(10),
Data management a.a. 2009-2010. Il linguaggio SQL
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,
Uso 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
Esercizi SQL. Credits Prof. Campi
Esercizi SQL Credits Prof. Campi 1 Le cose che non vogliamo vedere Target list miste quando non c è la clausola group by Attributi nella select o nella having che non siano anche nella group by (quando
Esercizio 4.1. Soluzione:
Capitolo 4 Esercizio 4.1 Ordinare i seguenti domini in base al valore massimo rappresentable, supponendo che integer abbia una rappresentazione a 32 bit e smallint a 16 bit: numeric(12,4), decimal(10),
a) Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto.
RISOLUZIONE APPELLO SISTEMI INFORMATIVI DEL 12/02/2007 a Si progetti uno schema concettuale Entità-Relazioni per lo scenario più sotto descritto. Una base di dati deve essere utilizzata per gestire il
Esercitazione su SQL
Esercizio 1. Esercitazione su SQL Si consideri la base di dati relazionale composta dalle seguenti relazioni: impiegato Matricola Cognome Stipendio Dipartimento 101 Sili 60 NO 102 Rossi 40 NO 103 Neri
Join in SQL (primo modo) Informatica. Tabella Dipartimento. Interrogazione 4a. Interrogazione 4b. Interrogazione 4a
Join in SQL (primo modo) Informatica Lezione 7 Laurea magistrale in Psicologia Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 09- Per formulare interrogazioni che coinvolgono
Istruzioni DML di SQL
Istruzioni DML di SQL Pag. 99 par.4 1 Sintassi: Costrutto: INSERT INTO (Inserimento di dati in tabelle) INSERT INTO [(, ,, )] VALUES (, ,
4 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
Esercizio 1. Cognome e nome:... Matricola:...
Sistemi Informativi - Prova d'esame del 20/12/2000 Regole del gioco: 1) vietato scambiare informazioni con altri; 2) motivare ampiamente tutte le risposte; 3) indicare con chiarezza, cognome, nome e numero
Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.
(Structured Query Language) : Il linguaggio è di fatto lo standard tra i linguaggi per la gestione di data base relazionali. prima versione IBM alla fine degli anni '70 per un prototipo di ricerca (System
Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi
Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Per fare questo untilizziamo tre tabelle Alunni,materie,voti Alunni Materie Voti Creo un record per ogni
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
Esercizi SQL. Monday, January 24, 2011
Esercizi SQL 1 2) AEROPORTO (Città, Nazione, NumPiste) VOLO (IdVolo, GiornoSett, CittàPart, OraPart, CittàArr, OraArr, TipoAereo) AEREO (TipoAereo, NumPasseggeri, QtaMerci) 2 Trovare le città da cui partono
1 Database universitario 1.1 Elenco tabelle PERSONA (ID, is_studente, is_docente, nome, cognome) STUDENTE (matricola, persona references persona(id))
1 Database universitario 1.1 Elenco tabelle PERSONA (ID, is_studente, is_docente, nome, cognome) STUDENTE (matricola, persona references persona(id)) DOCENTE (codice, persona references persona(id)) CORSO
Il 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
Esercizi SQL. Dato il seguente schema di una base di dati dove gli attributi che compongono la chiave sono scritti in grassetto
Dato il seguente schema di una base di dati dove gli attributi che compongono la chiave sono scritti in grassetto Studenti data matricola nomeesame voto 12/09/2005 78 Analisi 30 23/12/2004 8 Statistica
Prova scritta. Mercoledì 11 Febbraio 2009. Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008
Mercoledì 11 Febbraio 2009 Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008 Prova scritta Esercizio 1 (8 punti). Si vuole progettare una base di dati per un albergo che
Informatica. Sintassi. Interrogazioni in SQL. Significato dell interrogazione. Tabella Impiegato. Basi di dati parte 4 SQL
Informatica Basi di dati parte 4 SQL Lezione 13 Laurea magistrale in Scienze della mente Laurea magistrale in Psicologia dello sviluppo e dell'educazione Anno accademico: 2012 2013 1 Interrogazioni in
Data Management Software. Il linguaggio SQL. Raggruppamenti. Paolo Avallone Sr Consulting IT Specialist DB2, Data Management Marzo 2004
DB2 Data Management Software Il linguaggio SQL Raggruppamenti Paolo Avallone Sr Consulting IT Specialist DB2, Data Management Marzo 2004 LEGGERE LE SEGUENTI ATTENZIONI Le informazioni contenute in questa
Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola:
Compito Basi di Dati. Tempo concesso: 90 minuti 08 Giugno 2006 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione di un sistema di gestione di uno studio
Basi Di Dati, 09/12/2003
Basi Di Dati, 09/12/2003 Una concessionaria di auto nuove ed usate vuole automatizzare alcune delle sue attività. L attività che la concessionaria vuole automatizzare riguarda la gestione delle auto nuove,
ESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7
ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni
(a) Trovare le informazioni dei viaggi di durata inferiore ai 15 giorni select * from Viaggio where Durata <15
Esercizi SQL 1. Dato il seguente schema di base di dati relazionale: TURISTA(CF, Nome, Cognome, DataNascita, Telefono) VIAGGIO(Codice, NomeLocalità, Durata, Costo, DataPartenza) PRENOTAZIONE(Turista, Viaggio,
Basi di Dati Corso di Laura in Informatica Umanistica
Basi di Dati Corso di Laura in Informatica Umanistica Appello del 10/09/2010 Parte 1: Algebra Relazionale e linguaggio SQL Docente: Giuseppe Amato Sia dato il seguente schema di base di dati per la gestione
UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME
UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Medicina e Chirurgia CORSO DI LAUREA IN TECNICHE DI RADIOLOGIA MEDICA PER IMMAGINI E RADIOTERAPIA ESAME 14 maggio 2009 1 Progettazione di basi di dati Si vuole
SQL - Funzioni di gruppo
una funzione di gruppo permette di estrarre informazioni da gruppi di tuple di una relazione le funzioni di gruppo si basano su due concetti: partizionamento delle tuple di una relazione in base al valore
Prova scritta. Giovedì 02 Ottobre 2008. Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008
Giovedì 02 Ottobre 2008 Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008 Prova scritta Esercizio 1 (8 punti). Si vuole progettare una base di dati per uno stabilimento
Corso di Basi di Dati A.A. 2014/2015
Corso di Laurea in Ingegneria Gestionale Sapienza - Università di Roma Corso di Basi di Dati A.A. 2014/2015 Esercitazione su Progettazione Logica Tiziana Catarci, Andrea Marrella Ultimo aggiornamento :
Prova Scritta di Basi di Dati
Prova Scritta di Basi di Dati 25 Luglio 2006 COGNOME: NOME: MATRICOLA: Si prega di risolvere gli esercizi direttamente sui fogli del testo, negli spazi indicati. Usare il foglio protocollo solo per la
SQL prima 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 2011/12
SQL prima 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 2011/12 DEFINIZIONE Il concetto di vista 2 È una relazione derivata. Si specifica l espressione che genera il suo contenuto.
COGNOME MATRICOLA. Con vincoli di integrita referenziale: INTERVENTO.CodTecnico à TECNICO.Codice INTERVENTO.MatCaldaia à CALDAIA.
NOME COGNOME MATRICOLA ESERCIZIO 1 (15 punti) Dato il seguente schema relazionale, che modella le informazioni relative ad un azienda che fornisce assistenza caldaie a domicilio: TECNICO(Codice, Nome,
Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m
Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 21 LUGLIO 2015 Tempo: 2h30m Si consideri il seguente schema di base di dati, che vuole memorizzare informazioni relative a pubblicazioni su riviste
SQL e ACCESS. Modello relazionale PROBLEMA ENTITA STUDENTE
SQL e ACCESS Prof. Salvatore Multazzu ([email protected]) Applicazioni Informatiche nella comunicazione Modello relazionale Entità Record o Ennuple Attributi o Campi Tipi Chiavi Primarie (PK)
INFORMATICA GENERALE Prof. Alberto Postiglione. Scienze della Comunicazione Università di Salerno. INFORMATICA GENERALE Prof. Alberto Postiglione
INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione Università degli Studi di Salerno : (1) Interrogazioni semplici INFORMATICA GENERALE Prof. Alberto Postiglione Scienze della Comunicazione
Corso di Laboratorio di Basi di Dati
Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. [email protected] Università degli Studi di L Aquila Dipartimento di Informatica Technolabs
Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1
Basi di Dati Prof. L. Tanca e F. A. Schreiber APPELLO DEL 12 FEBBRAIO 2015 PARTE 1 Si consideri il seguente schema di base di dati che vuole tenere traccia delle attività di un autofficina. MECCANICO (CodiceFiscale,
UTENTE (Codice, Nome, Cognome, Indirizzo, Telefono) PRESTITO (Collocazione, CodUtente, DataPrestito, DataRest)
ESERCITAZIONI: 01/04/2008 TEMA: STRUCTURED QUERY LANGUAGE Base di Dati: Biblioteca UTENTE (Codice, Nome, Cognome, Indirizzo, Telefono) PRESTITO (Collocazione, CodUtente, DataPrestito, DataRest) COPIA (Collocazione,
INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3
INFORMATICA PER L IMPRESA (Docente Prof. Alfredo Garro) ESERCIZIO 3 L azienda Plastic S.p.A, operante nel settore materie plastiche, ha deciso di dotarsi di un Sistema Informativo per la gestione del suo
Utilizzando Microsoft Access. Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono alcuni campi
Vogliamo creare una struttura per permettere di memorizzari i voti della classe in tutte le materie Utilizzando Microsoft Access Si crea la tabella Anagrafica degli alunni,le Materie e i voti si mettono
ALGEBRA RELAZIONALE RIEPILOGO
ALGEBRA RELAZIONALE RIEPILOGO PROIEZIONE: (notazione ) Operatore unario per estrarre colonne da una relazione: lista_attributi (R) Lo schema del risultato contiene i soli attributi contenuti in lista_attributi.
Esprimere in algebra (ottimizzata), calcolo relazionale la seguente query:
Basi di dati: appello 16/02/10 i consideri il seguente schema di base di dati che vuole tenere traccia delle informazioni relative ai partecipanti a gare podistiche in Lombardia CORSA (Codice, Nome, IndirizzoPartenza,
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:
Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R: Si consiglia di creare il data base, inserire i dati nelle tabelle, provare
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:
Gestione dei dati e della conoscenza, 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: Si vuole modellare
Esercitazione SQL. Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica
Esercitazione SQL Università degli Studi del Sannio Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica CorsodiBasidiDati Anno Accademico 2005/2006 docente: ing. Corrado Aaron Visaggio email:
Esercitazione 8 Mercoledì 21 gennaio 2015 (2 ore) DDL e progettazione
Esercitazione 8 Mercoledì 21 gennaio 2015 (2 ore DDL e progettazione Testi degli esercizi Esercizio 1 (Tema d esame del 20 settembre 2012 Si consideri il seguente schema di base di dati che vuole tenere
Dispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di
Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere
Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report Facoltà di Lingue e Letterature Straniere Le QUERY 2 Che cos è una Query? Una Query rappresenta uno strumento per interrogare un database.
Sistemi per la gestione di database: MySQL ( )
Sistemi per la gestione di database: MySQL ( ) Relational Database e Relational Database Management System Un database è una raccolta di dati organizzata in modo da consentire l accesso, il reperimento
Structured Query Language parte 1
Consorzio per la formazione e la ricerca in Ingegneria dell'informazione Structured Query Language parte 1 Come interrogare una base di dati relazionale ed avere la risposta esatta Docente: Gennaro Pepe
Prova scritta. Mercoledì 23 Luglio 2008. Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008
Mercoledì 23 Luglio 2008 Appello di Informatica II - Corso di Laurea in Ottica e Optometria A.A. 2007/2008 Prova scritta Esercizio 1 (8 punti). Si vuole progettare una base di dati per una catena di ristoranti
Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1
Compito DA e BD. Tempo concesso: 90 minuti 12 giugno 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di una facoltà e si definisca
Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003
Esame di Stato Istituto Tecnico Industriale Soluzione della Seconda Prova Indirizzo: INFORMATICA Tema: INFORMATICA Anno Scolastico: 2002-2003 Il primo punto richiede l analisi e lo sviluppo del progetto
BASI DI DATI e SISTEMI INFORMATIVI LABORATORIO Esercizi di SQL (esercizi raccolti dalla rete e rivisti) D.Gubiani ESERCIZIO 1 Consideriamo la base di dati di un agenzia che organizza banchetti e contiene
Query. Query (Interrogazioni) SQL SQL. Significato dell interrogazione. Sintassi
Query (Interrogazioni) Ultima modifica: 5/4/2012 SQL Materiale aggiuntivo per il corso di laurea in Lingue e Culture per il Turismo classe L-15! È necessario un modo per interrogare le basi di dati, cioè
Squadra Giocatore Partita Goal Ingresso Ingresso SELECT FROM WHERE AND AND SELECT FROM WHERE AND AND AND AND SELECT FROM WHERE AND AND
Squadra(Nome, Citta, Sponsor, ColoriSociali, punticampionato, Allenatore Giocatore(NTessera, Squadra*, Numero, Nome, Cognome, DataNascita, CittàNascita, Ruolo, Stipendio con il vincolo di integrità referenziale
Volumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica
Istituto di Istruzione Superiore Alessandrini - Marino 1 Esercitazione di riepilogo sulle Query MySQL Giugno 2011 Classe VB Informatica Descrizione Un azienda commerciale che vende prodotti IT (computers,
Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1
Compito Sistemi Informativi LA. Tempo concesso : 90 minuti 25 Marzo 03 Nome: Cognome: Matricola: Esercizio 1 Si considerino le seguenti specifiche relative alla realizzazione della base di dati di un circolo
Appello di BD del Corso di laurea in Informatica del 9/1/2007 Compito e soluzioni
Esercizio Un produttore multinazionale di oggetti di arredamento vuole rappresentare le informazioni relative alla produzione degli oggetti in vendita. Di ogni oggetto in vendita interessa il modello;
Archivi e Basi di Dati
Archivi e Basi di Dati A B C File Programma 1 Programma 2 A B C File modificati Programma 1 DBMS DB Programma 2 Informatica Generale (CdL in E&C), A.A. 2000-2001 55 Problemi nella gestione di archivi separati
DBMS (Data Base Management System)
Cos'è un Database I database o banche dati o base dati sono collezioni di dati, tra loro correlati, utilizzati per rappresentare una porzione del mondo reale. Sono strutturati in modo tale da consentire
CONCETTO DI ANNIDAMENTO
LEZIONE14 SQL ANNIDAMENTI PAG. 1 / 5 PROF. ANDREA ZOCCHEDDU LEZIONE14 SQL ANNIDAMENTI CONCETTO DI ANNIDAMENTO LINGUAGGIO SQL QUERY ANNIDATE Per annidamento si intende la possibilità che, all interno di
Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m
Basi di Dati 1 Prof. L. Tanca e F. A. Schreiber APPELLO DEL 9 SETTEMBRE 2015 Tempo: 2h30m Si consideri il seguente schema di base di dati, che vuole memorizzare informazioni relative a un sito di affitto
Basi di dati 9 febbraio 2010 Compito A
Basi di dati 9 febbraio 2010 Compito A Domanda 0 (5%) Leggere e rispettare le seguenti regole: Scrivere nome, cognome, matricola (se nota), corso di studio e lettera del compito (ad esempio, A) sui fogli
Le Basi di Dati. Le Basi di Dati
Le Basi di Dati 20/05/02 Prof. Carlo Blundo 1 Le Basi di Dati Le Base di Dati (database) sono un insieme di tabelle di dati strutturate in maniera da favorire la ricerca di informazioni specializzate per
SQL: definizione schema
Si Clienti(codice,nome,indirizzo,p_iva) scriva il SQL che definisce il seguente schema relazionale Prodotti(codice,nome,descrizione,prezzo) SQL: definizione schema Fatture(codice,cliente,data) RigheFattura(codice,fattura,prodotto,quantità,prezzo)
1. Per ogni film in cui appaiono solo attori nati prima del 1970 restituire il titolo del film.
Esercizio 1. Siano dati i seguenti schemi di relazione: Attori(CodiceAtt, Nome, AnnoNascita) PK(CodiceAtt) AttoriFilm(CodiceAtt*, CodiceFilm*) PK(CodiceAtt, CodiceFilm) CodiceAtt FK(Attori), CodiceFilm
Vogliamo creare una anagrafe e poi creare delle query che rispondono a delle domandi. Utilizzando Microsoft Access
Vogliamo creare una anagrafe e poi creare delle query che rispondono a delle domandi Utilizzando Microsoft Access Si crea la tabella Anagrafica degli alunni e si mettono alcuni campi Si creano via via
SQL come linguaggio di interrogazione. Basi di dati. Interrogazioni SQL. Interpretazione algebrica delle query SQL
SQL come linguaggio di interrogazione Basi di dati Linguaggi di Interrogazione: SQL Prof.Angela Bonifati Le interrogazioni SQL sono dichiarative l utente specifica quale informazione è di suo interesse,
Basi di dati. L Algebra Relazionale. K. Donno - L Algebra Relazionale
Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente
Si formulino le seguenti interrogazioni tramite il linguaggio SQL:
Informatica per le Scienze Umane - Corso di Laurea in Lettere Appello del 15.01.2009 - Docente: Massimo Coppola Modello Relazionale e SQL Si consideri la seguente base di dati relativa alla redazione di
Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6
Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica
Introduzione all Algebra Relazionale
Basi di dati L Algebra Relazionale Introduzione all Algebra Relazionale Una volta definito lo schema logico di un database, partendo da un Diagramma E-R, e dopo aver inserito le tabelle nel database, eventualmente
Gli operatori relazionali
Gli operatori relazionali Agiscono su una o più relazioni per ottenere una nuova relazione (servono a realizzare le interrogazioni sul database) Ci sono tre operazioni fondamentali per i database relazionali:
Basi di Dati. Esercizi di SQL (2) - Soluzioni
Basi di Dati Esercizi di SQL (2) - Soluzioni 1. 15 febbraio 2001. CORSO (CodCorso, NomeC, Anno, Semestre) ORARIO-LEZIONI (CodCorso, GiornoSettimana, OraInizio, OraFine, Aula) (a) Trovare le aule in cui
MAX, SUM, AVG, COUNT)
INTRODUZIONE A SQL Definizione di tabelle e domini Alcuni vincoli di integrità Struttura base SELECT FROM WHERE Funzioni di aggregazione (MIN, MAX, SUM, AVG, COUNT) Query da più tabelle (FROM R1, Rk) Join
M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO
Seconda prova scritta Ministero dell Istruzione, dell Università e della Ricerca M733 ESAME DI STATO DI ISTITUTO TECNICO COMMERCIALE CORSO DI ORDINAMENTO Indirizzo: PROGRAMMATORI Tema di: INFORMATICA GENERALE
I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due:
Il modello relazionale I database relazionali sono il tipo di database attualmente piu diffuso. I motivi di questo successo sono fondamentalmente due: 1. forniscono sistemi semplici ed efficienti per rappresentare
Informatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Basi di Dati) Modello Entità-Relazione Anno Accademico 2009/2010 Da: Atzeni, Ceri, Paraboschi, Torlone - Basi di Dati Lucidi del Corso di Basi di Dati 1, Prof.
Dati relazionali e XML
Dati relazionali e Introduzione (1) Memorizzazione dei dati Utilizzo dei dati Applicazione DBMS relazionale Applicazione Applicazione 2 Introduzione (2) Memorizzazione dei dati Utilizzo dei dati Applicazione
Interrogazioni nidificate, commenti
Interrogazioni nidificate, commenti La forma nidificata è meno dichiarativa, ma talvolta più leggibile (richiede meno variabili) La forma piana e quella nidificata possono essere combinate Le sottointerrogazioni
Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota
Attributi e domini Assumiamo un universo infinito numerabile U = {A 0, A 1, A 2...} di attributi. Denotiamo gli attributi con A, B, C, B 1, C 1... e gli insiemi di attributi con X, Y, Z, X 1,... per brevità
SQL: concetti base SQL. Definizione dei dati in SQL. SQL: "storia"
SQL SQL: concetti base originariamente "Structured Query Language", ora "nome proprio" linguaggio con varie funzionalità: contiene sia il DDL sia il DML ne esistono varie versioni vediamo gli aspetti essenziali,
Lezione V. Aula Multimediale - sabato 29/03/2008
Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)
DATABASE RELAZIONALI
1 di 54 UNIVERSITA DEGLI STUDI DI NAPOLI FEDERICO II DIPARTIMENTO DI DISCIPLINE STORICHE ETTORE LEPORE DATABASE RELAZIONALI Dott. Simone Sammartino Istituto per l Ambiente l Marino Costiero I.A.M.C. C.N.R.
Corso di Basi di Dati
Corso di Basi di Dati Esercitazione: L algebra relazionale Home page del corso: http://www.cs.unibo.it/~difelice/dbsi/ Esercizio 1 Ø Dato il seguente schema: POETA(Nome, Cognome, AnnoNascita, LuogoNascita)
DIPARTIMENTO IMPIEGATO PROGETTO SEDE. (0,1) (1,1) DIREZIONE Cognome. Codice. Telefono (0,1) (1,N) AFFERENZA. Stipendio (0,N) Nome (1,1) Età
PROGETTAZIONE LOGICA 7í0 Progettazione logica Obiettivo: ëtradurre" lo schema concettuale in uno schema logico che rappresenti gli stessi dati in maniera corretta ed eæciente Input: Output: æ schema concettuale
Modello E-R. Modello relazionale
1 - Cinema Hollywood Si deve progettare una base di dati a supporto della programmazione cinematografica della catena di cinema Hollywood. Al momento dell acquisto di un film da proiettare vengono memorizzati
Esercizio III. telefono, tipo di regia (comico, drammatico, ) per i registi: il nome e il cognome (che identificano il regista), l età, il
Esercizio I Definire uno schema E R che descriva i dati di una applicazione relativa ad una catena di officine. Sono di interesse: Le officine, con nome (identificante), indirizzo e telefono. Le automobili,
