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

Che cosa garantisce un vincolo UNIQUE su una colonna?

  1. AChe la colonna non possa essere modificata dopo l'inserimento
  2. BLa colonna diventa automaticamente la chiave primaria della tabella
  3. CChe due righe non abbiano lo stesso valore non NULL in quella colonna
  4. DChe i valori della colonna siano ordinati
2.Facile

Come si ordina un risultato dallo stipendio più alto a quello più basso?

  1. AGROUP BY salary DESC
  2. BSORT salary DOWN
  3. CORDER BY salary DESC
  4. DORDER BY salary ASC
3.Facile

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

  1. AMODIFY
  2. BUPDATE
  3. CREPLACE COLUMN
  4. DINSERT
4.Media

Una tabella employees ha una colonna manager_id che fa riferimento a un altro dipendente. Come si elenca ogni dipendente accanto al nome del suo responsabile?

  1. ACreando una seconda copia della tabella su disco
  2. BUsando soltanto GROUP BY manager_id
  3. CCombinare la tabella con se stessa usando UNION ALL e un filtro WHERE
  4. DUnendo la tabella employees con se stessa usando due alias
5.Media

Quale query restituisce il numero di città diverse nella tabella customers?

  1. ASELECT SUM(DISTINCT city) FROM customers
  2. BSELECT DISTINCT COUNT(city) FROM customers
  3. CSELECT COUNT(city) FROM customers GROUP BY city
  4. DSELECT COUNT(DISTINCT city) FROM customers
6.Media

Gli studenti possono seguire molti corsi e i corsi hanno molti studenti. Come si modella questa situazione con le tabelle?

  1. ACon una tabella di associazione che contiene chiavi esterne verso studenti e corsi
  2. BFondendo studenti e corsi in un'unica tabella
  3. CCon una colonna di chiave esterna course_id nella tabella degli studenti che punta a courses
  4. DCon un elenco di id dei corsi memorizzato in una sola colonna
7.Difficile

Quale funzione finestra assegna 1, 2, 3, ... alle righe di ogni partizione senza pari merito?

  1. ARANK()
  2. BROW_NUMBER()
  3. CCOUNT()
  4. DDENSE_RANK()
8.Difficile

Perché una query con WHERE YEAR(order_date) = 2025 potrebbe non usare un indice su order_date?

  1. AL'indice su order_date viene usato solo per le clausole ORDER BY, mai per WHERE
  2. BGli indici non funzionano mai con le date
  3. CYEAR non è SQL valido
  4. DApplicare una funzione alla colonna impedisce una semplice ricerca per intervallo sull'indice

Soluzioni

  1. 1. C · Che due righe non abbiano lo stesso valore non NULL in quella colonna
  2. 2. C · ORDER BY salary DESC
  3. 3. B · UPDATE
  4. 4. D · Unendo la tabella employees con se stessa usando due alias
  5. 5. D · SELECT COUNT(DISTINCT city) FROM customers
  6. 6. A · Con una tabella di associazione che contiene chiavi esterne verso studenti e corsi
  7. 7. B · ROW_NUMBER()
  8. 8. D · Applicare una funzione alla colonna impedisce una semplice ricerca per intervallo sull'indice

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