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 restituisce la media di una colonna numerica?

  1. AMEAN
  2. BAVG
  3. CMEDIAN
  4. DSUM
2.Facile

Nel modello relazionale, come si chiama una riga di una tabella?

  1. ASchema
  2. BAttributo
  3. CDominio
  4. DTupla
3.Facile

In un modello LIKE, che cosa rappresenta il carattere jolly %?

  1. AUna qualsiasi cifra singola
  2. BEsattamente un carattere in quella posizione della stringa
  3. CLa fine della stringa
  4. DQualsiasi sequenza di zero o più caratteri
4.Media

Che cosa fornisce una common table expression (WITH name AS (...))?

  1. AUna tabella permanente che resta memorizzata su disco finché non viene eliminata
  2. BUn indice su una colonna
  3. CUn risultato temporaneo con un nome che si può usare all'interno di un'istruzione
  4. DUn nuovo utente del database
5.Media

Quale query restituisce il numero di ordini per cliente?

  1. ASELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  2. BSELECT customer_id FROM orders WHERE COUNT(*) > 0
  3. CSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  4. DSELECT DISTINCT COUNT(*) FROM orders
6.Media

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

  1. ALo standard SQL vieta più di un indice per tabella
  2. BLe righe possono essere memorizzate fisicamente in un solo ordine
  3. CGli indici clusterizzati usano troppa memoria
  4. DGli indici clusterizzati possono essere definiti solo sulla chiave primaria
7.Difficile

Dopo customers LEFT JOIN orders, perché usare COUNT(o.id) invece di COUNT(*) per contare gli ordini per cliente?

  1. ACOUNT(o.id) conta solo i clienti distinti
  2. BCOUNT(*) non è ammesso dopo un join
  3. CCOUNT(*) ignora le righe con valori NULL
  4. DCOUNT(*) conta come 1 la riga riempita di NULL per i clienti senza ordini
8.Difficile

Il locking a due fasi (2PL) garantisce:

  1. AChe le transazioni non attendano mai
  2. BChe non servano lock
  3. CChe i deadlock non possano mai verificarsi
  4. DSchedule serializzabili rispetto ai conflitti

Soluzioni

  1. 1. B · AVG
  2. 2. D · Tupla
  3. 3. D · Qualsiasi sequenza di zero o più caratteri
  4. 4. C · Un risultato temporaneo con un nome che si può usare all'interno di un'istruzione
  5. 5. C · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  6. 6. B · Le righe possono essere memorizzate fisicamente in un solo ordine
  7. 7. D · COUNT(*) conta come 1 la riga riempita di NULL per i clienti senza ordini
  8. 8. D · Schedule serializzabili rispetto ai conflitti

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