1.Facile
Quale istruzione SQL aggiunge nuove righe a una tabella?
- ASELECT
- BUPDATE
- CINSERT
- DALTER
2.Facile
Che cosa garantisce un vincolo UNIQUE su una colonna?
- AChe i valori della colonna siano ordinati
- BChe due righe non abbiano lo stesso valore non NULL in quella colonna
- CLa colonna diventa automaticamente la chiave primaria della tabella
- DChe la colonna non possa essere modificata dopo l'inserimento
3.Facile
Che cos'è una chiave primaria (primary key)?
- AUna colonna o un insieme di colonne che identifica in modo univoco ogni riga
- BUna password per il database
- CLa prima colonna di ogni tabella
- DUna colonna che può contenere valori duplicati ma non deve mai contenere NULL
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?
- AUsando soltanto GROUP BY manager_id
- BCombinare la tabella con se stessa usando UNION ALL e un filtro WHERE
- CUnendo la tabella employees con se stessa usando due alias
- DCreando una seconda copia della tabella su disco
5.Media
Quale query restituisce il numero di ordini per cliente?
- ASELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
- BSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- CSELECT DISTINCT COUNT(*) FROM orders
- DSELECT customer_id FROM orders WHERE COUNT(*) > 0
6.Media
Nell'algebra relazionale, l'operatore di selezione (σ) corrisponde a quale clausola SQL?
- AGROUP BY
- BElenco della SELECT
- CORDER BY
- DWHERE
7.Difficile
Dopo customers LEFT JOIN orders, perché usare COUNT(o.id) invece di COUNT(*) per contare gli ordini per cliente?
- ACOUNT(*) conta come 1 la riga riempita di NULL per i clienti senza ordini
- BCOUNT(o.id) conta solo i clienti distinti
- CCOUNT(*) ignora le righe con valori NULL
- DCOUNT(*) non è ammesso dopo un join
8.Difficile
Che cos'è una lettura fantasma (phantom read)?
- AUna query che non restituisce righe
- BUna query ripetuta restituisce nuove righe inserite da un'altra transazione confermata
- CLa lettura di dati mai scritti
- DLa lettura di modifiche non confermate
Soluzioni
- 1. C · INSERT
- 2. B · Che due righe non abbiano lo stesso valore non NULL in quella colonna
- 3. A · Una colonna o un insieme di colonne che identifica in modo univoco ogni riga
- 4. C · Unendo la tabella employees con se stessa usando due alias
- 5. B · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- 6. D · WHERE
- 7. A · COUNT(*) conta come 1 la riga riempita di NULL per i clienti senza ordini
- 8. B · Una query ripetuta restituisce nuove righe inserite da un'altra transazione confermata
Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.