• Non ci sono risultati.

GROUPBY SOCIETA’ HAVING COUNT(*) >=3

Nel documento Basi di Dati e Sistemi Informativi (pagine 40-78)

Esercizio 4.b

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’)

Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

Scrivere la query SQL che determina:

Esercizio 4.b

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’)

Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

SELECT CODICE

FROM ATLETA, PARTECIPAZIONE WHERE (CODICEATLETA=CODICE) GROUPBY CODICE,CODICEATLETA HAVING (COUNT(*)>=5)

Esercizio 4.b

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’)

Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

Scrivere la query SQL che determina:

Esercizio 4.b

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’)

Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta) SELECT CODICE FROM ATLETA EXCEPT SELECT DISTINCT(CODICEATLETA) FROM PARTECIPAZIONE

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

1. Determinare la cardinalita’ (#righe) della query seguente: SELECT CODICE

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

1. Determinare la cardinalita’ (#righe) della query seguente: SELECT CODICE

FROM ATLETA

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

2. Determinare la cardinalita’ (#righe) della query seguente: SELECT DISTINCT(NOME)

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

2. Determinare la cardinalita’ (#righe) della query seguente: SELECT DISTINCT(NOME)

FROM ATLETA

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

3. Determinare la cardinalita’ (#righe) della query seguente: SELECT DISTINCT(NOME)

FROM ATLETA

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore) Partecipazione(CodiceGara, CodiceAtleta)

3. Determinare la cardinalita’ (#righe) della query seguente: SELECT DISTINCT(NOME)

FROM ATLETA

WHERE (SOCIETA’ =‘Borgorosso’)

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi

Gara(CodiceGara, Disciplina, Data, CodiceVincitore), 20 el Partecipazione(CodiceGara, CodiceAtleta), 100 elementi 4. Determinare la cardinalita’ (#righe) della query seguente: SELECT CODICEGARA

FROM PARTECIPAZIONE, ATLETA WHERE (CODICE=CODICEATLETA)

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Societa’), 50 elementi

Gara(CodiceGara, Disciplina, Data, CodiceVincitore), 20 el Partecipazione(CodiceGara, CodiceAtleta), 100 elementi 4. Determinare la cardinalita’ (#righe) della query seguente: SELECT CODICEGARA

FROM PARTECIPAZIONE, ATLETA WHERE (CODICE=CODICEATLETA)

Esercizio 5

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, Specialita’), 50 elementi Gara(CodiceGara, Disciplina, Data, CodiceVincitore), 20 el Partecipazione(CodiceGara, CodiceAtleta), 100 elementi 5. Determinare la cardinalita’ (#righe) della query seguente: SELECT *

FROM GARA, ATLETA

WHERE (DISCIPLINA=SPECIALITA’)

Esercizio 6

Dato il seguente schema:

UTENTE(CF, Nome, Cognome, Via, Città)

PACCO(Codice, Peso, CFMittente, CFDestinatario, Stato) Scrivere la query SQL che costruisce la tabella PACCO: 1. Peso ha valore di default 0,1

2. CFMittente e CFDestinatario sono in vincolo di integrità referenziale con l’attributo CF della tabella UTENTE

Esercizio 6

Dato il seguente schema:

UTENTE(CF, Nome, Cognome, Via, Città)

PACCO(Codice, Peso, CFMittente, CFDestinatario, Stato) Scrivere la query SQL che determina:

◇ Numero di pacchi di almeno 15 Kg spediti da utenti residenti a Bologna

Esercizio 6

Dato il seguente schema:

UTENTE(CF, Nome, Cognome, Via, Città)

PACCO(Codice, Peso, CFMittente, CFDestinatario, Stato) Scrivere la query SQL che determina:

◇ CF di utenti che non hanno MAI perso dei pacchi postali a loro destinati (se un pacco è perso, Stato=“Perso”)

Esercizio 6

Dato il seguente schema:

UTENTE(CF, Nome, Cognome, Via, Città)

PACCO(Codice, Peso, CFMittente, CFDestinatario, Stato) Scrivere la query SQL che determina:

◇ CF, Nome e Cognome di utenti di Bologna che hanno effettuato almeno 3 spedizioni

Esercizio 6

Dato il seguente schema:

UTENTE(CF, Nome, Cognome, Via, Città)

PACCO(Codice, Peso, CFMittente, CFDestinatario, Stato) Scrivere la query SQL che determina:

◇ Numero di spedizioni effettuate tra utenti che risiedono nella stessa città.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

1. Nome e Cognome dei docenti che hanno prenotato l’aula “Ercolani1” in data 13/10/2015.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

2. Capienza massima tra le aule del dipartimento di Fisica, prenotate dal docente con codice 134.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

3. Numero dei docenti che hanno prenotato aule del

Dipartimento di Matematica, nel periodo compreso tra il 13/06/2014 ed il 13/10/2014.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

4. Codice del docente che ha prenotato almeno due aule (distinte) del Dipartimento di Fisica, in data 13/10/2014 (VINCOLO: non è possibile usare operatori aggregati!)

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

5. Codice, nome e cognome dei docenti che non hanno mai prenotato aule del dipartimento di Fisica.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

6. Per ogni dipartimento, il numero di prenotazioni di aule nel periodo compreso tra il 17/10/2013 ed il 17/11/2014.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

7. I codici dei docenti che hanno effettuato almeno 4 prenotazioni di aule del dipartimento di Fisica.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

8. Codice, nome e cognome dei docenti che hanno effettuato prenotazioni di aule del dipartimento di Fisica.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

9. Dipartimento che ospita l’aula con maggior numero di posti.

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

10. Nomi delle aule del dipartimento di Fisica che non sono state mai prenotate nel periodo dal 30/09/2013 al

Esercizio 7 (per casa)

Dato il seguente schema:

Docente(Codice, Nome, Cognome)

Aula(Nome, Dipartimento, NumPosti)

Prenotazione(Data, NomeAula, CodDocente) Scrivere la query SQL che determina:

11. Nome/i delle aule prenotate più della media (di tutte le altre aule), nel periodo compreso tra il 1/1/2013 ed il

Esercizio 8

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, DataNascita, Societa’) Allenatore(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

Esercizio 8

Dato il seguente schema:

Atleta(Codice, Nome, Cognome, DataNascita, Societa’) Allenatore(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

INSERT INTO SPORTIVI(NOME,COGNOME) VALUES (‘Michele’, ‘Rossi’)

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

2. Popola la tabella Sportivi(Nome, Cognome, Societa’) come insieme di tutti gli atleti ed allenatori presenti nello schema.

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

INSERT INTO SPORTIVI(NOME,COGNOME, SOCIETA’) (SELECT NOME,COGNOME,SOCIETA’

FROM ATLETI UNION

SELECT NOME,COGNOME,SOCIETA’ FROM ALLENATORI)

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

3. Rimuove tutti gli allenatori la cui societa’ di appartenenza non e’ specificata.

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

DELETE FROM ALLENATORI WHERE (SOCIETA’ IS NULL)

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

4. Aggiorna i dati degli Atleti nati in data 10/11/2012,

Esercizio 8

Dato il seguente schema:

Atleti(Codice, Nome, Cognome, DataNascita, Societa’) Allenatori(Codice, Nome, Cognome, Profilo, Societa’) Sportivi(Nome, Cognome, Societa’)

Scrivere la query SQL che:

UPDATE ATLETI

SET SOCIETA’=‘POLISPORTIVA ROSSI’ WHERE DATANASCITA=’10/11/2012’

Esercizio 9

Nel documento Basi di Dati e Sistemi Informativi (pagine 40-78)

Documenti correlati