1.Makkelijk
Welke aggregatiefunctie telt rijen?
- AMAX
- BCOUNT
- CAVG
- DSUM
2.Makkelijk
Een klant kan veel bestellingen plaatsen, maar elke bestelling hoort bij precies één klant. Welk type relatie is dit?
- AEen-op-een
- BVeel-op-veel
- CNul-op-nul
- DEen-op-veel
3.Makkelijk
Welke instructie voegt een nieuwe kolom toe aan een bestaande tabel?
- AUPDATE TABLE
- BALTER TABLE
- CCREATE COLUMN
- DINSERT COLUMN
4.Gemiddeld
Welke ACID-eigenschap betekent dat gelijktijdige transacties elkaars onvoltooide wijzigingen niet zien?
- ADuurzaamheid (durability)
- BAtomiciteit (atomicity)
- CBeschikbaarheid (availability)
- DIsolatie (isolation)
5.Gemiddeld
Welke query geeft het aantal verschillende steden in de tabel customers?
- ASELECT SUM(DISTINCT city) FROM customers
- BSELECT DISTINCT COUNT(city) FROM customers
- CSELECT COUNT(city) FROM customers GROUP BY city
- DSELECT COUNT(DISTINCT city) FROM customers
6.Gemiddeld
Waarom mislukt SELECT price * 2 AS double_price FROM t WHERE double_price > 10 in de meeste databases?
- AAliassen mogen geen underscore bevatten
- BWHERE kan alleen tekstkolommen vergelijken
- CWHERE wordt vóór de SELECT-lijst geëvalueerd, dus de alias bestaat nog niet
- DRekenen is niet toegestaan in de SELECT-lijst
7.Moeilijk
Een tabel heeft een miljoen rijen en een Booleaanse kolom is_active die voor 95% ervan TRUE is. Waarom kan de optimizer een index op is_active negeren voor WHERE is_active = TRUE?
- ADe meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups
- BTRUE wordt door de index als NULL behandeld
- CDe optimizer gebruikt nooit indexen in WHERE-clausules
- DOp Booleaanse kolommen kunnen geen indexen worden gemaakt
8.Moeilijk
Waarom is SELECT dept, name, COUNT(*) FROM emp GROUP BY dept ongeldig in standaard-SQL?
- Adept moet binnen een aggregatiefunctie staan
- BCOUNT(*) kan niet samen met GROUP BY worden gebruikt
- Cname is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep
- DGROUP BY moet alle kolommen van de tabel opsommen
Antwoordenblad
- 1. B · COUNT
- 2. D · Een-op-veel
- 3. B · ALTER TABLE
- 4. D · Isolatie (isolation)
- 5. D · SELECT COUNT(DISTINCT city) FROM customers
- 6. C · WHERE wordt vóór de SELECT-lijst geëvalueerd, dus de alias bestaat nog niet
- 7. A · De meeste rijen voldoen, dus een volledige tabelscan is goedkoper dan veel index-lookups
- 8. C · name is niet gegroepeerd en niet geaggregeerd, dus het heeft geen enkele waarde per groep
Volledige stapsgewijze oplossingen: oefen dit onderwerp op examproblems.com.