Document information
- University
- Politecnico di Milano
- Degree programme
- Computer Engineering
- Subject
- Basi di Dati
- Material language
- Italian
- Classification
- Exam · Full exam
- Content
- Exam paper only
- Original format
- Text
- Searchable text
Study material for Basi di Dati, shared by the Studwiz community and reviewed by moderators.
Study material for Basi di Dati, shared by the Studwiz community and reviewed by moderators.
Import quality: text was extracted directly from the original document.
Representative passages recognised in different parts of the material. The full extracted text remains available to search, while this compact preview makes the page easier to read.
BASI DI DATI 1 – PROFF. S. CERI, G. POZZI, E. QUINTARELLI, L. TANCA – A.A. 2017/2018 QUARTO APPELLO – 9 LUGLIO 2018 TEMPO A DISPOSIZIONE: 2 h E 30 m Cognome ________________________________ Nome__________________________Matricola_______ Si consideri il seguente schema di base di dati nell’ambito dei farmaci: FARMACO(CODFAR, NOMECOMMERCIALE, AZIENDA, FORMAFARMACEUTICA, ANNOLANCIO) CONTENUTO(PRINCIPIOATTIVO, CODFAR, QUANTITÀ) PRINCIPIO(PRINCIPIOATTIVO, DESCRIZIONE, CATEGORIA, ANNOSCOPERTA) Ogni farmaco include almeno un principio attivo . Forma indica la forma farmaceutica (compressa, crema, cerotto, …). Gli identificatori di farmaci e principi attivi sono codici alfanumerici di 20 caratteri. A. Linguaggi formali (6 punti) Esprimere in algebra relazionale, calcolo relazionale e Datalog la seguente interrogazione: Trovare i nomi dei farmaci che siano esclusivi (cioè non esiste un altro farmaco, prodotto da azienda diversa, che contenga lo stesso principio attivo) e che inoltre contengano un unico principio attivo. B. Interrogazioni SQL (10 punti) 1. Trovare nome e azienda produttrice dei farmaci venduti come “compresse” che non contengono principi attivi della categoria “Antidolorifico”. (3 punti) SELECT NomeCommerciale, Azienda FROM Farmaco WHERE FormaFarmaceutica=’Compresse’ AND CodFar NOT IN ( SELECT C.Farmaco FROM Contenuto AS C, Principio AS P WHERE C.PrincipioAttivo=P.PrincipioAttivo AND P.Categoria=’Antidolorifico’ ) 2. Trovare codice, nome e azienda del farmaco con la minima quantità totale di principi attivi contenuti tra le aziende che producono farmaci di categoria “Antibiotico”. (4 punti) CREATE VIEW NumPrincipi (CodFar, NomeCommerciale, Azienda, Num) AS ( SELECT F.CodFar, F.NomeCommerciale, F.Azienda, SUM(C.Quantità) FROM Farmaco AS F, Contenuto AS C WHERE…
First page of the document.