• Non ci sono risultati.

Chi deve recuperare la prima prova intermedia, deve svolgere i punti A,B,C. Chi deve recuperare la seconda prova intermedia, deve svolgere i punti D,E. Chi deve recuperare entrambe le prove deve svolgere i punti B, C, D. ----------------------------------

N/A
N/A
Protected

Academic year: 2022

Condividi "Chi deve recuperare la prima prova intermedia, deve svolgere i punti A,B,C. Chi deve recuperare la seconda prova intermedia, deve svolgere i punti D,E. Chi deve recuperare entrambe le prove deve svolgere i punti B, C, D. ----------------------------------"

Copied!
2
0
0

Testo completo

(1)

Corso di Basi di Dati A, A.A. 2007-2008 Appello del 18/2/2009

--- Chi deve recuperare la prima prova intermedia, deve svolgere i punti A,B,C.

Chi deve recuperare la seconda prova intermedia, deve svolgere i punti D,E.

Chi deve recuperare entrambe le prove deve svolgere i punti B, C, D.

--- A) Illustrare le differenze fra le due seguenti query SQL:

1. SELECT count(*) as NumeroProdotti

FROM Prodotti JOIN Vendite ON Codice_Prodotto = Cod_Prodotto WHERE Prezzo_Unitario > 100

GROUP BY Cod_Cliente

2. SELECT count(*) as NumeroProdotti FROM Prodotti, Vendite

WHERE Prezzo_Unitario > 100 GROUP BY Cod_Cliente

Come andrebbe modificata la seconda query per rendere uguali i risultati ? B) Descrivere la funzione della clausola GROUP BY in SQL

C) Sia dato il seguente schema di base di dati:

CLIENTI(Codice_Cliente, Nome, Indirizzo, Citta, Telefono) FORNITORI(Codice_Fornitore, Nome, Indirizzo, Citta, Telefono) CATEGORIE_PRODOTTI(Codice_Categoria, Nome)

PRODOTTI(Codice_Prodotto, Nome, Produttore, Zona_Magazzino, Cod_Categoria) FORNITURA(Cod_Prodotto, Cod_Fornitore)

ACQUISTI(Cod_Fornitore, Data, Quantita, Cod_Prodotto, PrezzoUnitario) VENDITE(Cod_Cliente, Data, Quantita, Cod_Prodotto, PrezzoUnitario) nel quale sono definiti i seguenti vincoli di integrità referenziale:

Cod_Prodotto Codice_Prodotto Cod_ClienteCodice_Cliente Cod_Fornitore Codice_Fornitore Cod_Categoria Codice_Categoria

(si supponga che l’attributo Nome di Clienti e Fornitori comprenda sia nome che cognome, se il cliente/fornitore è un privato, o il nome della ditta, se è una ditta).

Scrivere le query SQL per trovare:

1. La categoria che comprende il prodotto di cui, in una singola vendita, sono stati venduti il maggior numero di pezzi.

2. L‟elenco, ordinato per quantità, dei prodotti acquistati dalla ditta XSZ spa nel 2004 e venduti a Giorgio Lisi

3. L‟elenco di tutti i prodotti acquistati dai diversi fornitori nel 2005 e la corrispondente quantità totale fornita, ordinati per quantità totale acquistata e, in seconda istanza, alfabeticamente per fornitore.

(2)

D) Progettare una base di dati che permetta di gestire il problema descritto nel seguito, oltre a consentire di eseguire la quey al punto E, nei seguenti punti:

1) Definire uno schema Entità/Relazione che descriva il problema

2) Definire uno schema logico secondo il modello relazionale, derivato da una ristrutturazione, se necessaria, del diagramma E/R, esteso con gli eventuali vincoli necessari a garantire la consistenza della base di dati.

In una biblioteca sono ammessi al prestito esclusivamente gli studenti iscritti ad una qualunque università italiana. Il prestito ha una durata fissa di quindici giorni.

Pertanto, per ogni volume prestato, si registra solo la data di prestito.

La base di dati contiene informazioni sui volumi, sulla loro collocazione (in quale scaffale si trova ciascun volume) e sulla loro data di acquisto. Dei clienti ammessi al prestito si conservano in permanenza i dati (nome, cognome, indirizzo, codice fiscale, numero di matricola e università di appartenenza); tutti gli altri utenti possono solo consultare temporaneamente i volumi e quindi sono registrati nella base di dati solo durante la consultazione (per la quale viene specificata l‟ora di consegna del libro) utilizzando tuttavia gli stessi dati dei clienti registrati in permanenza, a parte il numero di matricola, che può essere assente.

La biblioteca viene costantemente aggiornata e quindi si deve prevedere anche la gestione dei fornitori, dei quali è registrato il numero di partita IVA, nome della ditta e indirizzo.

E) Relativamente allo schema precedente, scrivere la query SQL che determini quali volumi di cui è autore Umberto Eco sono stati prestati nell‟ultimo mese e, per ciascuno, quante volte sia stato preso in prestito. Inoltre scrivere il comando SQL che cancelli dalla base di dati l‟utente temporaneo Guido Lazzeri, nel momento in cui riconsegna il volume “Il nome della Rosa” di Umberto Eco, dopo averlo consultato.

(usare „<‟ e „>‟ per indicare, rispettivamente, „prima di‟ data e „successivamente a‟

data)

NB Lo schema definito al punto precedente deve essere tale da poter eseguire la query in modo corretto.

Riferimenti

Documenti correlati

Una condizione indispensabile per l’impiego della tecnica MRP è la seguente: il tempo impiegato dal fornitore o dal reparto produttivo a monte per effettuare il

Al cospetto di questo quadro economico e produttivo (che non può essere attribuito soltanto al miglioramento di quella che un tempo si chiamava la “congiuntura”, ma

sua divisione in due cellule, tempo caratteristico della specie e delle condizioni colturali..

Livello descrittivo: gli allievi sono in grado di riconoscere le figure e di caratterizzarle in base alle loro proprietà geometriche, le sanno denominare. Livello razionale:

Si aggiunga alla classe ArrayStack (implementa l’interfaccia Stack usando un array) il metodo Stack clone() che restituisce un nuovo stack avente lo stesso contenuto dello stack...

Therefore, this cross- sectional investigation was planned, primarily, to determine the ability of nuclear magnetic resonance (NMR) spectroscopic analysis of unstimulated whole

Even for strong turbulence, the dissipation time never becomes much lower than the leakage time, at least in the three-layer model; therefore, both the energy and the dissipation

A comparison between the evidence produced with the instruments estimated on monthly data and the ones estimated on weekly data (and then sampled at a monthly