aboutsummaryrefslogtreecommitdiff
path: root/opdracht-2
diff options
context:
space:
mode:
authorlonkaars <loek@pipeframe.xyz>2022-10-04 16:17:51 +0200
committerlonkaars <loek@pipeframe.xyz>2022-10-04 16:17:51 +0200
commitb9199dff0e43429f1c739872c49e027b2d44b93d (patch)
treee544e459d4a552589b64615aedd5324e3a82e5e6 /opdracht-2
parent045cd3cd1dccb0a87db5cca390db895b7a4876f4 (diff)
opdracht 2 beginsel
Diffstat (limited to 'opdracht-2')
l---------opdracht-2/build1
-rw-r--r--opdracht-2/opdracht-2.m4131
-rw-r--r--opdracht-2/reset.sql0
3 files changed, 132 insertions, 0 deletions
diff --git a/opdracht-2/build b/opdracht-2/build
new file mode 120000
index 0000000..1fb5c6e
--- /dev/null
+++ b/opdracht-2/build
@@ -0,0 +1 @@
+../render-opdracht \ No newline at end of file
diff --git a/opdracht-2/opdracht-2.m4 b/opdracht-2/opdracht-2.m4
new file mode 100644
index 0000000..59a0106
--- /dev/null
+++ b/opdracht-2/opdracht-2.m4
@@ -0,0 +1,131 @@
+changequote(`{{', `}}')
+
+define({{include_sql}}, {{
+```sql
+include({{$1.sql}})
+```
+}})
+
+define({{q_norm}}, {{
+## Opdracht $1
+
+Query:
+include_sql({{q$1}})
+}})
+
+define({{q_with_output}}, {{
+## Opdracht $1
+
+Query:
+include_sql({{t$1}})
+
+Output:
+include({{t$1.md}})
+}})
+
+define({{q_with_test}}, {{
+q_norm($1)
+
+Test query:
+include_sql({{t$1}})
+
+Output:
+include({{t$1.md}})
+}})
+
+# Practicum 1
+
+## Opdracht 1
+
+> Voeg de volgende kolommen aan de database toe en zet er zinvolle data in:
+> - Woonplaats -> Voeg toe aan tabel tblKlant
+> - Leverdatum -> Voeg toe aan tabel tblOrder
+> - Voorraad -> Voeg toe aan tabel tblProduct
+
+## Opdracht 2
+
+> Maak een tabel 'status' met de volgende waarden:
+> - 'Nog te leveren'
+> - 'Opgehaald door transporteur'
+> - 'Afgemeld door bezorger'
+> - 'Onbekend'
+
+## Opdracht 3
+
+> Voordat je bovenstaande gaat doen (als het goed is zou je deze conclusie zelf
+> ook al hebben getrokken, ga je eerst je ontwerp aanpassen.
+> - Pas het ontwerp: ERD en strokendiagram aan.
+
+## Opdracht 4
+
+> Maak een query van de tabel product waarbij alle kolomkoppen een logische
+> 'Aliasnaam' krijgen.
+
+## Opdracht 5
+
+> Maak een query waarbij de volgende output verschijnt:
+> - 'De klant' <Naam> ' woont in de plaats:' <plaats>
+
+## Opdracht 6
+
+> Maak voor een willekeurige klant een query aan die de totaalprijs laat zien van
+> het aantal producten wat binnen 1 order is besteld in Euro's. Waarbij minimaal
+> de volgende producten/aantallen voorkomen in de order:
+> product 1, 3 stuks
+> product 2, 5 stuks
+> product 3, 2 stuks
+> Tip: zet de rekensom in de formule van de query.
+
+## Opdracht 7
+
+> Rond de uitkomst van de hiervoor gemaakte query af op hele Euro's.
+
+## Opdracht 8
+
+> Maak een query die van de orderlijst uitsluitend de orders laat zien die de
+> status 'nog te leveren' hebben.
+
+## Opdracht 9
+
+> Maak een query die alle klantgegevens laat zien voor alle orders die status
+> 'nog te leveren' hebben.
+
+## Opdracht 10
+
+> Maak een query waarbij alle artikelprijzen met 10% worden verhoogd.
+> In de query toon je de oorspronkelijke prijs en de nieuwe prijs.
+> (de nieuwe prijs wordt alleen getoond, niet opgeslagen in de database).
+
+## Opdracht 11
+
+> Wat is het verschil tussen een join en een union, toon dit aan middels een
+> sprekend voorbeeld?
+
+## Opdracht 12
+
+> Wat doet de 'group by' functie?
+
+## Opdracht 13
+
+> Wat is het effect van 'having'?
+
+## Opdracht 14
+
+> Wat is het doel van subselects?
+
+## Opdracht 15
+
+> Wat is een view?
+
+## Opdracht 16
+
+> Leg uit wat een 'commitmoment' is
+
+## Opdracht 17
+
+> Wat is het verschil tussen een enkelvoudige en meervoudige insert?
+
+## Opdracht 18
+
+> Met welke instructie verwijder je alle records uit een tabel?
+
diff --git a/opdracht-2/reset.sql b/opdracht-2/reset.sql
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/opdracht-2/reset.sql