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

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
3.Facile

Che cos'è una chiave candidata?

  1. AUna colonna in attesa di diventare una chiave esterna
  2. BUn insieme minimo di colonne che identifica in modo univoco ogni riga
  3. CUn insieme di colonne condiviso tra due tabelle per collegarne le righe
  4. DQualsiasi colonna che contiene valori NULL
4.Media

Un LEFT JOIN restituisce:

  1. ASolo le righe corrispondenti di entrambe le tabelle
  2. BSolo tutte le righe della tabella di destra
  3. CTutte le righe della tabella di sinistra e le righe corrispondenti di quella di destra, con NULL dove non c'è corrispondenza
  4. DLe righe che non corrispondono in nessuna delle due tabelle
5.Media

Quale affermazione su HAVING è corretta?

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

Quale query restituisce il numero di ordini per cliente?

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

x è NULL e y = 1. Qual è il valore della condizione (x > 5 OR y = 1)?

  1. ANULL, quindi la riga viene sempre scartata
  2. BTRUE
  3. CUNKNOWN
  4. DFALSE
8.Difficile

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

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

Soluzioni

  1. 1. B · AVG
  2. 2. D · Qualsiasi sequenza di zero o più caratteri
  3. 3. B · Un insieme minimo di colonne che identifica in modo univoco ogni riga
  4. 4. C · Tutte le righe della tabella di sinistra e le righe corrispondenti di quella di destra, con NULL dove non c'è corrispondenza
  5. 5. B · Può usare funzioni di aggregazione per filtrare i gruppi
  6. 6. A · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  7. 7. B · TRUE
  8. 8. A · COUNT(*) conta come 1 la riga riempita di NULL per i clienti senza ordini

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