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 funzione di aggregazione conta le righe?

  1. ASUM
  2. BCOUNT
  3. CMAX
  4. DAVG
2.Facile

Che cosa fa WHERE country IN ('NL', 'BE', 'DE')?

  1. AMantiene le righe in cui country è uguale a uno qualsiasi dei valori dell'elenco
  2. BMantiene le righe in cui country contiene contemporaneamente tutti e tre i codici
  3. COrdina le righe nell'ordine dell'elenco
  4. DMantiene le righe in cui country non è nell'elenco
3.Facile

Quali righe seleziona WHERE price BETWEEN 10 AND 20?

  1. ALe righe con prezzo maggiore di 10 e minore di 20, escludendo 10 e 20
  2. BSolo le righe con prezzo uguale a 10 o a 20
  3. CLe righe con prezzo fuori dall'intervallo da 10 a 20
  4. DLe righe con prezzo da 10 a 20, compresi 10 e 20
4.Media

Perché una tabella può avere un solo indice clusterizzato (clustered index)?

  1. AGli indici clusterizzati usano troppa memoria
  2. BGli indici clusterizzati possono essere definiti solo sulla chiave primaria
  3. CLo standard SQL vieta più di un indice per tabella
  4. DLe righe possono essere memorizzate fisicamente in un solo ordine
5.Media

Quale affermazione su HAVING è corretta?

  1. APuò usare funzioni di aggregazione per filtrare i gruppi
  2. BNon può essere usata con GROUP BY
  3. COrdina i risultati
  4. DDeve precedere WHERE nell'istruzione SELECT
6.Media

Che cosa restituisce INTERSECT usato tra due query SELECT?

  1. ALe righe presenti in entrambi i risultati
  2. BTutte le righe di entrambi i risultati
  3. CIl prodotto cartesiano dei risultati
  4. DLe righe del primo risultato ma non del secondo
7.Difficile

La tabella b contiene nella colonna y i valori 1, 2 e NULL. Che cosa restituisce SELECT * FROM a WHERE x NOT IN (SELECT y FROM b)?

  1. ANessuna riga
  2. BLe righe di a in cui x non è 1 né 2
  3. CSolo le righe di a in cui x è NULL
  4. DTutte le righe di a
8.Difficile

Una tabella ha un milione di righe e una colonna booleana is_active che è TRUE per il 95% di esse. Perché l'ottimizzatore potrebbe ignorare un indice su is_active per WHERE is_active = TRUE?

  1. AL'indice tratta TRUE come NULL
  2. BLa maggior parte delle righe corrisponde, quindi una scansione completa della tabella costa meno di molte ricerche nell'indice
  3. CNon si possono creare indici su colonne booleane
  4. DL'ottimizzatore non usa mai gli indici nelle clausole WHERE

Soluzioni

  1. 1. B · COUNT
  2. 2. A · Mantiene le righe in cui country è uguale a uno qualsiasi dei valori dell'elenco
  3. 3. D · Le righe con prezzo da 10 a 20, compresi 10 e 20
  4. 4. D · Le righe possono essere memorizzate fisicamente in un solo ordine
  5. 5. A · Può usare funzioni di aggregazione per filtrare i gruppi
  6. 6. A · Le righe presenti in entrambi i risultati
  7. 7. A · Nessuna riga
  8. 8. B · La maggior parte delle righe corrisponde, quindi una scansione completa della tabella costa meno di molte ricerche nell'indice

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