Werkblad Databases & SQL met antwoorden

Gratis printbaar werkblad Databases & SQL: 8 opgaven van makkelijk tot tentamenniveau, met antwoordenblad. Print het of sla het op als pdf.

Nieuw werkbladOnline oefenen met hints

Voor docenten: gratis te printen, kopiëren en in de les te gebruiken. Elk nieuw werkblad heeft nieuwe waarden en een eigen antwoordblad. Een link naar ExamProblems op je cursuspagina wordt gewaardeerd.

Naam: ____________________   Datum: ____________

1.Makkelijk

Wat doet WHERE country IN ('NL', 'BE', 'DE')?

  1. AHoudt rijen over waarvan country alle drie de codes tegelijk bevat
  2. BHoudt rijen over waarvan country gelijk is aan een van de waarden in de lijst
  3. CHoudt rijen over waarvan country niet in de lijst staat
  4. DSorteert rijen in de volgorde van de lijst
2.Makkelijk

Welke clausule geeft in PostgreSQL en MySQL alleen de eerste 10 rijen van een resultaat terug?

  1. AMAX 10
  2. BTOP ROWS 10
  3. CLIMIT 10
  4. DFIRST 10 ONLY
3.Makkelijk

Welke instructie voegt een nieuwe kolom toe aan een bestaande tabel?

  1. AALTER TABLE
  2. BUPDATE TABLE
  3. CCREATE COLUMN
  4. DINSERT COLUMN
4.Gemiddeld

Welke query geeft het aantal bestellingen per klant?

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

Welke query toont klanten die nooit een bestelling hebben geplaatst?

  1. ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
6.Gemiddeld

Een tabel employees heeft een kolom manager_id die naar een andere werknemer verwijst. Hoe toon je elke werknemer naast de naam van zijn manager?

  1. AKoppel de tabel employees aan zichzelf met twee aliassen
  2. BCombineer de tabel met zichzelf met UNION ALL en een WHERE-filter
  3. CGebruik alleen GROUP BY manager_id
  4. DMaak een tweede kopie van de tabel op schijf
7.Moeilijk

Een app voert UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7 uit en meldt een conflict als er geen rij is bijgewerkt. Welke techniek is dit?

  1. ADatabase-sharding
  2. BWrite-ahead logging
  3. COptimistische concurrency control
  4. DStrikte two-phase locking met rijvergrendelingen
8.Moeilijk

De tabel employee(emp_id, dept_id, dept_name) heeft de sleutel emp_id, en dept_id → dept_name. Welke uitspraak is juist?

  1. AZe staat in 2NF maar niet in 3NF
  2. BZe staat in BCNF en dus ook in 3NF
  3. CZe staat niet in 1NF
  4. DZe staat niet in 2NF

Antwoordenblad

  1. 1. B · Houdt rijen over waarvan country gelijk is aan een van de waarden in de lijst
  2. 2. C · LIMIT 10
  3. 3. A · ALTER TABLE
  4. 4. D · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  5. 5. A · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  6. 6. A · Koppel de tabel employees aan zichzelf met twee aliassen
  7. 7. C · Optimistische concurrency control
  8. 8. A · Ze staat in 2NF maar niet in 3NF

Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.