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

Een klant kan veel bestellingen plaatsen, maar elke bestelling hoort bij precies één klant. Welk type relatie is dit?

  1. ANul-op-nul
  2. BEen-op-een
  3. CVeel-op-veel
  4. DEen-op-veel
2.Makkelijk

Hoe sorteer je een resultaat van het hoogste naar het laagste salaris?

  1. ASORT salary DOWN
  2. BORDER BY salary ASC
  3. CGROUP BY salary DESC
  4. DORDER BY salary DESC
3.Makkelijk

Welk sleutelwoord sorteert het resultaat van een query?

  1. AARRANGE
  2. BSORT
  3. CORDER BY
  4. DGROUP BY
4.Gemiddeld

Wat geeft EXCEPT (in Oracle MINUS genoemd) terug?

  1. ARijen die in beide query's voorkomen
  2. BAlle rijen uit beide query's zonder duplicaten
  3. CRijen van de tweede query die niet in de eerste voorkomen
  4. DRijen van de eerste query die niet in de tweede voorkomen
5.Gemiddeld

Welke query toont klanten die nooit een bestelling hebben geplaatst?

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

Een view in SQL is:

  1. AEen opgeslagen query die zich gedraagt als een virtuele tabel
  2. BEen kopie van een tabel op schijf
  3. CEen scherm in de databaseclient om tabellen te doorbladeren
  4. DEen type index
7.Moeilijk

De query FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' laat onverwacht klanten zonder bestellingen weg. Waarom?

  1. ADe join zou USING moeten gebruiken in plaats van ON
  2. Bstatus is een gereserveerd woord
  3. CDe WHERE-voorwaarde op o weigert de met NULL gevulde rijen, waardoor het een inner join wordt
  4. DLEFT JOIN houdt nooit rijen zonder overeenkomst over
8.Moeilijk

De Boyce-Codd-normaalvorm (BCNF) vereist dat voor elke niet-triviale functionele afhankelijkheid X → Y geldt:

  1. AX is een supersleutel
  2. BX bevat NULL
  3. CY is atomair
  4. DY is een primaire sleutel

Antwoordenblad

  1. 1. D · Een-op-veel
  2. 2. D · ORDER BY salary DESC
  3. 3. C · ORDER BY
  4. 4. D · Rijen van de eerste query die niet in de tweede voorkomen
  5. 5. C · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  6. 6. A · Een opgeslagen query die zich gedraagt als een virtuele tabel
  7. 7. C · De WHERE-voorwaarde op o weigert de met NULL gevulde rijen, waardoor het een inner join wordt
  8. 8. A · X is een supersleutel

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