Scheda di esercizi di Basi di dati e SQL con soluzioni
Scheda di esercizi di Basi di dati e SQL gratuita e stampabile: 8 esercizi dal livello facile a quello d’esame, con le soluzioni. Stampala o salvala come PDF.
Per i docenti: gratuita da stampare, copiare e usare in classe. Ogni nuova scheda ha nuovi valori e le sue soluzioni. Un link a ExamProblems nella pagina del corso è molto apprezzato.
Nome: ____________________ Data: ____________
1.Facile
GRANT e REVOKE appartengono a quale parte di SQL?
- AData Control Language (DCL)
- BData Definition Language (DDL)
- CData Manipulation Language (DML)
- DData Query Language (DQL)
2.Facile
Che cosa restituisce un CROSS JOIN?
- ASolo le righe che non corrispondono
- BSolo le righe che corrispondono su una colonna chiave condivisa
- COgni combinazione di righe delle due tabelle
- DSolo le righe della prima tabella
3.Facile
Che cosa fa WHERE country IN ('NL', 'BE', 'DE')?
- AMantiene le righe in cui country è uguale a uno qualsiasi dei valori dell'elenco
- BOrdina le righe nell'ordine dell'elenco
- CMantiene le righe in cui country contiene contemporaneamente tutti e tre i codici
- DMantiene le righe in cui country non è nell'elenco
4.Media
La prima forma normale (1NF) richiede che:
- AOgni colonna non chiave dipende dall'intera chiave e da nient'altro che dalla chiave
- BNon ci siano chiavi esterne
- COgni tabella abbia esattamente una colonna
- DOgni colonna contenga valori atomici e non ci siano gruppi ripetuti
5.Media
Che cosa fornisce una common table expression (WITH name AS (...))?
- AUn indice su una colonna
- BUna tabella permanente che resta memorizzata su disco finché non viene eliminata
- CUn risultato temporaneo con un nome che si può usare all'interno di un'istruzione
- DUn nuovo utente del database
6.Media
Che cosa restituisce SELECT COALESCE(phone, 'unknown') FROM customers per un cliente il cui phone è NULL?
- AUn errore
- B'unknown'
- CNULL
- DUna stringa vuota
7.Difficile
Qual è il risultato di SELECT COUNT(col) FROM t se tutti i valori di col sono NULL e la tabella ha 10 righe?
- ANULL
- B0
- CUn errore
- D10
8.Difficile
Perché una query con WHERE YEAR(order_date) = 2025 potrebbe non usare un indice su order_date?
- AYEAR non è SQL valido
- BGli indici non funzionano mai con le date
- CL'indice su order_date viene usato solo per le clausole ORDER BY, mai per WHERE
- DApplicare una funzione alla colonna impedisce una semplice ricerca per intervallo sull'indice