SQL-basisvaardigheden leert u een bron bevragen in plaats van een export te geloven. In Eindhoven komen analisten bij Vaardig Data & Excel binnen met een CSV die „uit het systeem” komt, zonder te kunnen zeggen welk systeem, welke filters en welk tijdstip. Sven Mulder behandelt in drie dagdelen SELECT, WHERE, JOIN, GROUP BY en HAVING, op een oefendatabase die lijkt op orders, voorraad en afdelingen. U schrijft de query. U leest hem daarna voor alsof een controller meeluistert.

Professionals bekijken een SQL-query op een extern scherm tijdens een workshop in Eindhoven
SQL-workshop: de query staat op het tweede scherm, de toelichting in gewone zinnen ernaast.

Dit is geen cursus databasebeheer. U maakt geen tabellen in productie, u krijgt geen rechten op een live server, en u leert geen vendor-specifieke trucjes die volgende maand breken. U leert de vragen die een extract moet kunnen beantwoorden: welke rijen, welke sleutel, welk aggregaat, en wat ontbreekt bewust.

De drie dagdelen

Dagdeel 1 — rijen en filters

SELECT, WHERE, AND, OR, NULL. U ontdekt dat een lege waarde geen nul is en dat een datumfilter op tekst de verkeerde maand pakt. Elke query eindigt met een telling die u met de hand kunt narekenen op een kleine set.

Dagdeel 2 — sleutels en JOIN

INNER JOIN en LEFT JOIN op orderregels en klanten. U tekent eerst welke rijen u verwacht te verliezen. Een JOIN die het aantal regels vermenigvuldigt, is geen resultaat maar een fout, ook als de omzet er indrukwekkend uitziet.

Dagdeel 3 — totalen die u durft te mailen

GROUP BY, HAVING en een sorteervolgorde die het MT herkent. U schrijft er drie zinnen bij: bron, definitie van omzet, en wat u hebt weggelaten. Zonder die zinnen is de query huiswerk, geen antwoord.

Een query die u in de les uit elkaar haalt

Onderstaande opzet gebruiken wij op de oefendatabase. De namen zijn bewust saai. Saaie namen overleven een overdracht.

SELECT afdeling, SUM(regelomzet) AS omzet
FROM orderregels
INNER JOIN orders ON orders.order_id = orderregels.order_id
WHERE orders.boekjaar = 2026
GROUP BY afdeling
HAVING SUM(regelomzet) > 0
ORDER BY omzet DESC;

Lees de JOIN voordat u de SUM gelooft. Zit er een tweede relatie op dezelfde sleutel, dan telt u regels dubbel. Dat is de fout die wij in Eindhovense voorraad- en servicebestanden het vaakst tegenkomen, niet een missende komma. De Excel-kant van dezelfde controle staat in Excel gevorderd. De vraag welke vergelijking eerlijk is, hoort bij Data-analyse.

Onderdeel U controleert Rood sein
WHERE Periode en status expliciet Filter staat alleen in uw hoofd
JOIN Rijen vóór en ná de join geteld Aantal regels stijgt zonder uitleg
GROUP BY Elke niet-geaggregeerde kolom staat in de groepering Database gokt een waarde
HAVING Filter op het totaal, niet op de bronrij HAVING gebruikt waar WHERE hoort

U werkt op onze oefenomgeving. Queries neemt u mee als tekst. Wij zetten niets op uw productiedatabase en vragen geen wachtwoorden. Hebt u een read-only account en mag uw security officer een geanonimiseerde subset vrijgeven, dan kan dagdeel 3 op die subset. Anders blijft de oefenset de norm. Dat is geen beperking van de les. Dat is hoe u voorkomt dat een cursus een incident wordt.

Welk dialect gebruikt u, T-SQL of een ander?

De les is standaard SQL die u in PostgreSQL en in veel rapportage-omgevingen herkent. Vendorfuncties voor datumtrucjes behandelen wij alleen als uw groep die dagelijks ziet, en dan als waarschuwing.

Ik heb nog nooit een queryvenster gezien. Kan ik meedoen?

Ja, mits u comfortabel typt en een tabel met rijen en kolommen kunt aanwijzen. De intake zegt het eerlijk als Excel gevorderd eerst nodig is.

Krijg ik een database op mijn laptop?

Nee. U logt in op de oefenomgeving tijdens de les en bewaart queries in een tekstbestand. Zo blijft versiebeheer simpel en installeert u geen server voor één cursus.

Hoe verhoudt dit zich tot Power Query?

Power Query verbergt een transformatie achter stappen. SQL laat dezelfde logica in tekst zien. Veel deelnemers doen SQL eerst, zodat ze de Power Query-stappen daarna kunnen voorlezen.

Werkgebied Eindhoven en Brainport

SQL-dagdelen zijn op Strijp-S. Teams uit Meerhoven en de High Tech Campus combineren de les met een ochtend op de eigen locatie. De oefenomgeving is vanaf het leslokaal bereikbaar; u hebt geen VPN van uw werkgever nodig voor de standaardmodule.

  • Strijp-S
  • Centrum
  • Woensel
  • Gestel
  • Stratum
  • Tongelre
  • Meerhoven
  • De Bergen

Vaardig Data & Excel B.V.

Uw aanspreekpunt: Sven Mulder

Torenallee 42
5617 BD Eindhoven

Telefoon: +31 40 240 1865

E-mail: [email protected]

OpenStreetMap: Torenallee 42, 5617 BD Eindhoven

SQL-basis inplannen