DIPARTIMENTO   DI   INFORMATICA
Università di Torino

Gian Luca Pozzato - MATEC

Query SQL: soluzioni proposte



Query 1: Scrivere, per ciascuna moglie, la squadra di appartenenza del marito
Soluzione proposta:

SELECT Mogli.nome, Mogli.cognome, Squadra_di_appartenenza
FROM Mogli, Clienti
WHERE Mogli.codice_fiscale_moglie=Clienti.codice_fiscale_moglie;


Query 2: Scrivere una query che restituisca il numero di giocatori presenti nell'archivio raggruppati per squadra di appartenenza (usare group by)
Soluzione proposta:

SELECT Squadra_di_appartenenza, count(*)
FROM Clienti
GROUP BY Squadra_di_appartenenza;


Query 3: Estrarre dal database gli alberghi che offrono la sauna
Soluzione proposta:

SELECT Nome_albergo, Cittą
FROM Alberghi, [Servizi offerti]
WHERE partita_iva=p_iva_albergo AND nome_servizio="sauna";


Query 4: Estrarre dal database gli alberghi che offrono un particolare servizio (introdotto mediante un parametro)
Soluzione proposta:

SELECT Nome_albergo, Cittą
FROM Alberghi, [Servizi offerti]
WHERE partita_iva=p_iva_albergo AND nome_servizio=servizio_cercato;


Query 5: Vogliamo conoscere l'elenco dei servizi di cui usufruiranno i giocatori della Sampdoria
Soluzione proposta:

SELECT nome_servizio, Clienti.nome, Clienti.cognome
FROM [Servizi offerti], Prenotazioni, Clienti
WHERE [Servizi offerti].p_iva_albergo=Prenotazioni.p_iva_albergo AND
Prenotazioni.cf_cliente=Clienti.codice_fiscale AND
Clienti.Squadra_di_appartenenza="Sampdoria";


Query 6: Vogliamo conoscere l'elenco dei servizi di cui usufruiranno le mogli dei giocatori di una squadra introdotta come parametro
Soluzione proposta:

SELECT nome_servizio, Mogli.nome, Mogli.cognome
FROM [Servizi offerti], Prenotazioni, Clienti, Mogli
WHERE [Servizi offerti].p_iva_albergo=Prenotazioni.p_iva_albergo AND
Prenotazioni.cf_cliente=Clienti.codice_fiscale AND
Clienti.codice_fiscale_moglie=Mogli.codice_fiscale_moglie AND
Clienti.Squadra_di_appartenenza=inserire_la_squadra;


Query 7: Vogliamo sapere, per ciascun giocatore, quante notti trascorrerą in albergo Soluzione proposta:

SELECT nome, cognome, sum(numero_notti)
FROM Clienti, Prenotazioni
WHERE codice_fiscale=cf_cliente
GROUP BY codice_fiscale, nome, cognome;





   Back to Gian Luca Pozzato's home page