Modulelessen (1/4)
Inleiding tot SQL
Wat is SQL
SQL (Structured Query Language) is de standaardtaal voor lezen en het manipuleren van gegevens binnen een relationele database. Geboren in de jaren zeventig bij IBM labs, tegenwoordig wordt het gesproken door vrijwel elke applicatie die opslaat gestructureerde gegevens: bedrijfssoftware, e-commerce, sociale netwerken, bankieren apps, analysedashboards. Het leren van SQL is wat ‘Ik gebruik een database’ scheidt uit "Ik beheer een database".
In deze cursus leren we SQL interactief: niets installeren, nee rekening vereist. Elke oefening draait op een echte PostgreSQL die erin leeft uw browsertabblad. Wanneer u op Verify drukt, wordt uw zoekopdracht daadwerkelijk uitgevoerd tegen een echte database – er is geen simulatie.
Een database in 30 seconden
Een relationele database is een set tabellen. Een tabel is als een gestructureerde tabel spreadsheet:
- elke rij is een record (bijvoorbeeld een medewerker, een bestelling, een boek);
- elke kolom is een attribuut van dat record (naam, salaris, prijs);
- elke kolom heeft een type (tekst, getal, datum, boolean…) en de database verwerpt waarden van het verkeerde type.
Tafels leven niet op zichzelf: ze hebben onderling relaties. Iedere medewerker behoort bijvoorbeeld tot een afdeling; elk project betrokken meerdere werknemers. Met SQL kunnen we tabellen opvragen, filteren en sorteren hen en – zoals we later zullen zien – hun relaties volgen.
Onze dataset
In Module 1 zullen we een dataset gebruiken met de naam employees, een kleine
fictief gezelschap met vier tafels:
departments— de afdelingen (bijvoorbeeld Engineering, Verkoop).employees— de werknemers, met naam, e-mailadres, salaris, indiensttredingsdatum.projects— de projecten van het bedrijf, met een budget.assignments— wie aan welk project werkt, met een rol.
In de oefeningen zul je het altijd al geladen vinden. Dat kan ook verken het vrij vanuit de Playground om queries uit te proberen zonder dat je iets hoeft op te lossen.
Drie dingen die u vooraf moet weten
Voordat u uw eerste vraag schrijft, drie regels die bij elke vraag van pas zullen komen les:
- Zoekwoorden zijn niet hoofdlettergevoelig:
SELECTenselectzijn gelijkwaardig, maar volgens afspraak schrijven we ze in HOOFDLETTERS om ze te onderscheiden tabel- en kolomnamen. - Stringsreeksen staan tussen enkele aanhalingstekens:
'Milano', niet"Milano". Dubbel aanhalingstekens zijn voor kolom-/tabelnamen (zelden nodig). - Elke verklaring eindigt met
;. Bij oefeningen kun je het weglaten, maar het schrijven ervan is een goede gewoonte; het wordt verplicht als je er meerdere gebruikt vragen op een rij.
Wat je gaat leren
In Module 1 behandelen we de basis van het lezen van gegevens:
SELECT … FROM— lees rijen uit een tabel.WHERE— rijen filteren.ORDER BY— sorteer de resultaten.
In Module 2 leggen we de lat hoger met LIMIT, DISTINCT, aliassen en
geaggregeerde functies. Later zullen JOIN en GROUP BY arriveren, en met
die beheers je 90% van de SQL die in de praktijk wordt gebruikt.
Klaar? Druk op Volgende les onderaan de pagina om te beginnen.