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

Quale istruzione SQL modifica i valori di righe già esistenti?

  1. AMODIFY
  2. BREPLACE COLUMN
  3. CUPDATE
  4. DINSERT
2.Facile

Che cosa fa UNION con i risultati di due query SELECT?

  1. AMantiene solo le righe presenti nella prima query ma non nella seconda
  2. BLi combina in un unico risultato e rimuove le righe duplicate
  3. CMantiene solo le righe presenti in entrambi
  4. DLi affianca unendoli su una chiave
3.Facile

Istruzioni come CREATE, ALTER e DROP appartengono a quale parte di SQL?

  1. AData Control Language (DCL)
  2. BData Manipulation Language (DML)
  3. CTransaction Control Language (TCL)
  4. DData Definition Language (DDL)
4.Media

Che cosa restituisce EXCEPT (chiamato MINUS in Oracle)?

  1. ALe righe che compaiono in entrambe le query
  2. BLe righe della prima query che non compaiono nella seconda
  3. CLe righe della seconda query che non compaiono nella prima
  4. DTutte le righe di entrambe le query senza duplicati
5.Media

Perché SELECT price * 2 AS double_price FROM t WHERE double_price > 10 fallisce nella maggior parte dei database?

  1. AGli alias non possono contenere un trattino basso
  2. BWHERE può confrontare solo colonne di testo
  3. CL'aritmetica non è ammessa nell'elenco della SELECT
  4. DWHERE viene valutata prima dell'elenco della SELECT, quindi l'alias non esiste ancora
6.Media

Quale proprietà ACID fa sì che le transazioni concorrenti non vedano le modifiche non ancora completate delle altre?

  1. ADurabilità
  2. BIsolamento
  3. CDisponibilità
  4. DAtomicità
7.Difficile

Un database di reportistica copia i nomi dei clienti nella tabella orders per evitare i join. Qual è il costo principale di questa denormalizzazione?

  1. ANon si possono più usare chiavi primarie
  2. BIl database non può più usare indici
  3. CLe copie ridondanti vanno mantenute coerenti ogni volta che i dati del cliente cambiano
  4. DLe query sulla tabella orders diventano più lente
8.Difficile

La query FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' esclude inaspettatamente i clienti senza ordini. Perché?

  1. ALa condizione WHERE su o scarta le righe riempite di NULL, trasformandolo in un inner join
  2. BIl join dovrebbe usare USING invece di ON
  3. Cstatus è una parola riservata
  4. DLEFT JOIN non mantiene mai le righe senza corrispondenza

Soluzioni

  1. 1. C · UPDATE
  2. 2. B · Li combina in un unico risultato e rimuove le righe duplicate
  3. 3. D · Data Definition Language (DDL)
  4. 4. B · Le righe della prima query che non compaiono nella seconda
  5. 5. D · WHERE viene valutata prima dell'elenco della SELECT, quindi l'alias non esiste ancora
  6. 6. B · Isolamento
  7. 7. C · Le copie ridondanti vanno mantenute coerenti ogni volta che i dati del cliente cambiano
  8. 8. A · La condizione WHERE su o scarta le righe riempite di NULL, trasformandolo in un inner join

Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.