Databases - 2

Workshop
lessonup.app : nlxdf
1 / 16
next
Slide 1: Slide
Applicatie- en mediaontwikkelaarMBOStudiejaar 2

This lesson contains 16 slides, with interactive quizzes and text slides.

time-iconLesson duration is: 90 min

Items in this lesson

Workshop
lessonup.app : nlxdf

Slide 1 - Slide

Kennismakingsronde
  • Opfrissen sql statements SELECT WHERE ORDER BY
  • LIKE
  • SELECT met INNER JOIN

Alternatief voor gevorderen
oefening 2, 3
Doelen

Slide 2 - Slide

Welke SQL-query selecteert alle klanten die "Lisa" heten uit de tabel klanten?
A
SELECT * FROM klanten WHERE naam = 'Lisa';
B
SELECT naam FROM klanten WHERE naam = 'Lisa';
C
SELECT naam FROM klanten;
D
SELECT * FROM klanten WHERE email = 'Lisa';

Slide 3 - Quiz

Welke SQL-query haalt klanten op die "Lisa" of "Karim" heten?
A
SELECT * FROM klanten WHERE naam = 'Lisa' AND naam = 'Karim';
B
SELECT * FROM klanten WHERE naam = 'Lisa' OR naam = 'Karim';
C
SELECT * FROM klanten WHERE naam IN ('Lisa' AND 'Karim');
D
SELECT * FROM klanten WHERE naam LIKE 'Lisa' AND 'Karim';

Slide 4 - Quiz

Hoe sorteer je de resultaten op naam in aflopende (Z→A) volgorde?
A
SELECT * FROM klanten ORDER BY naam ASC;
B
SELECT * FROM klanten ORDER BY naam DESC;
C
SELECT * FROM klanten SORT naam DESC;
D
SELECT * FROM klanten GROUP BY naam DESC;

Slide 5 - Quiz

Hoe sorteer je klanten eerst oplopend op naam en daarna aflopend op klant_id?
A
SELECT * FROM klanten ORDER BY naam ASC, klant_id DESC;
B
SELECT * FROM klanten ORDER BY naam DESC, klant_id ASC;
C
SELECT * FROM klanten ORDER BY klant_id DESC, naam ASC;
D
SELECT * FROM klanten ORDER BY klant_id DESC, naam ASC;

Slide 6 - Quiz

Kennismakingsronde
  • klant tabel bevatte dubbele records
  • graag nieuwe versie downloaden en importeren
  • webshop_v2.sql (itslearning)
  • Gooit de vorige database weg en importeert nieuwe data

Nieuwe versie webshop.sql

Slide 7 - Slide

Ik heb webshop_v2.sql gedownload en geimporteerd
A
Ja

Slide 8 - Quiz

Kennismakingsronde
  • Zoeken op patronen / deel van een tekst
  • In combinatie met WHERE
  • Wildcard - %

Bijvoorbeeld
Alle klanten waarvan het mailadres eindigt op @gmail.com
  • SELECT * FROM klant WHERE emailadres like '%@gmail.com'
Alle klanten die 'Jan' in hun naam hebben
  • SELECT * FROM klant WHERE naam like '%Jan%

LIKE

Slide 9 - Slide

Wat is het sql statement om de volgende data op te halen:

Alle klanten waarvan het telefoonnummer begint met 0655

Test het in je eigen database

Slide 10 - Open question

Wat is het sql statement om de volgende data op te halen:

Alle klanten met het tussenvoegsel 'van' in hun naam, bijvoorbeeld 'van Dijk'

Test het in je eigen database.

Slide 11 - Open question

Kennismakingsronde
  • Aan elkaar koppelen van tabellen
  • Meestal op basis van keys
  • meest gebruikte INNER JOIN
  • Andere: LEFT JOIN, RIGHT JOIN ...
JOINS

Slide 12 - Slide

Kennismakingsronde
 INNER JOIN – Alleen wat bij elkaar past
Bij een INNER JOIN krijgen we alleen gegevens te zien 
die in alle tabellen een match hebben.

bijvoorbeeld
SELECT * FROM klant a INNER JOIN bestelling b ON a.klant_id = b.bestelling_id;

INNER JOIN

Slide 13 - Slide

koppel categorie en product aan elkaar om een overzicht te krijgen van alle producten per categorie

Slide 14 - Open question

Kennismakingsronde
SELECT a.naam, b.datum,d.naam,d.prijs, c.aantal FROM klant a
INNER JOIN bestelling b
ON a.klant_id = b.bestelling_id
INNER JOIN bestelling_product c
on c.bestelling_id = b.bestelling_id
INNER JOIN product d
on c.product_id = d.product_id;


Kopieer en bekijk het resultaat
INNER JOIN - meerdere tabellen

Slide 15 - Slide

Kennismakingsronde
Ga verder met de slq oefeningen 1, 2 en 3
Maak oefening 1 en lever het word document in op itslearning
SQL oefeningen

Slide 16 - Slide