1.Facile
Quale vincolo garantisce che una colonna non possa mai essere lasciata vuota (NULL)?
- ANOT NULL
- BCHECK NULL
- CDEFAULT
- DUNIQUE
2.Facile
Quale funzione di aggregazione restituisce la media di una colonna numerica?
- AMEAN
- BSUM
- CMEDIAN
- DAVG
3.Facile
Quale parola chiave ordina il risultato di una query?
- AARRANGE
- BGROUP BY
- CSORT
- DORDER BY
4.Media
Un LEFT JOIN restituisce:
- ALe righe che non corrispondono in nessuna delle due tabelle
- BSolo le righe corrispondenti di entrambe le tabelle
- CTutte le righe della tabella di sinistra e le righe corrispondenti di quella di destra, con NULL dove non c'è corrispondenza
- DSolo tutte le righe della tabella di destra
5.Media
Che cos'è una lettura sporca (dirty read)?
- ALa lettura di dati senza una clausola WHERE
- BLa lettura della stessa riga due volte ottenendo lo stesso valore
- CLa lettura di dati da un disco danneggiato
- DLa lettura di dati scritti da un'altra transazione non ancora confermata
6.Media
Quale query elenca i clienti che non hanno mai effettuato un ordine?
- ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
- CSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
7.Difficile
Che cosa restituisce SELECT name, dept, AVG(salary) OVER (PARTITION BY dept) FROM emp?
- AOgni riga di dipendente insieme allo stipendio medio del suo reparto
- BUn errore, perché name non è in un GROUP BY
- CSolo i dipendenti che guadagnano più della media del loro reparto
- DUna riga per reparto con il suo stipendio medio
8.Difficile
Quale livello di isolamento impedisce le letture sporche (dirty read) ma consente ancora le letture non ripetibili?
- ARead uncommitted
- BSerializable
- CRead committed
- DRepeatable read
Soluzioni
- 1. A · NOT NULL
- 2. D · AVG
- 3. D · ORDER BY
- 4. C · Tutte le righe della tabella di sinistra e le righe corrispondenti di quella di destra, con NULL dove non c'è corrispondenza
- 5. D · La lettura di dati scritti da un'altra transazione non ancora confermata
- 6. A · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- 7. A · Ogni riga di dipendente insieme allo stipendio medio del suo reparto
- 8. C · Read committed
Soluzioni complete passo passo: esercitati su questo argomento su examproblems.com.