SQL SELECT (FROM) statement: data ophalen uit een database [TUTORIAL]
Iedereen die met data werkt zal vroeg of laat data uit een database willen ophalen. Vaak gebruikt men een relationele database die met SQL statements (ook wel SQL query) bevraagd kan worden.
In dit blog gaan we in op het SQL SELECT (FROM) statement, waarmee je data kunt ophalen uit een database.
Wil je op je eigen computer meedoen met deze tutorial? Volg dan deze stappen om SQL en PgAdmin te installeren.
Inhoud
Wat is SQL SELECT (FROM)?
SELECT is het meestgebruikte SQL statement. Het stelt ons in staat om informatie uit een database tabel (of meerdere tabellen) op te halen.
De structuur van de syntax is als volgt: SELECT kolomnaam FROM tabel_naam;
Met SQL queries specificeer je de output die je wilt hebben, maar niet de weg daarnaartoe. Het verschilt per database software en database versie hoe er tot de gewenste output gekomen wordt. De volgorde van opgehaalde data kan daarom verschillen, maar het totaal zal gelijk zijn voor iedereen. Dit betekent dat je bijvoorbeeld niet beschrijft in welke volgorde de data verkregen wordt.
Het is gangbaar om alleen de data op te vragen die je nodig hebt. Wanneer je volledige database tabellen onnodig opvraagt zorgt dit voor veel dataverkeer. Dit kan queries onnodig traag of kostbaar maken.
Je kunt het SQL SELECT statement combineren met andere (optionele) statements zoals AS, FROM, WHERE, GROUP BY, HAVING, en ORDER BY.
Het is ook mogelijk om binnen één query data uit verschillende tabellen te halen. Daarvoor heb je wel kennis nodig van het JOIN statement waarmee je eerst tabellen samenvoegt.
**Ook interessant: uitleg & tutorial SQL LEFT JOIN
Voorbeelden van SQL SELECT (FROM)
Nu zullen we laten zien hoe je SQL SELECT gebruikt in de praktijk. Hiervoor gebruiken we als voorbeeld de IMDb dataset die beschreven staat op deze pagina. Je kunt de dataset ook downloaden via de pagina en als je nog geen mogelijkheid hebt om met SQL te werken op jouw computer dan kun je deze installatie-stappen volgen.
Eén column opvragen uit een tabel
We hebben eerder deze blog de syntax voor SQL SELECT FROM al voorbij zien komen. Het simpelste gebruik hiervan is het opvragen van één kolom uit één tabel:
SELECT name
FROM movies;
Het is goed SQL gebruik om statements in hoofdletters te noteren al werkt het ook met kleine letters. Daarnaast zie je dat we ieder statement op een aparte regel plaatsen zodat de query overzichtelijk, begrijpelijk en leesbaar blijft (wederom niet verplicht maar wel aanbevolen). De query wordt afgesloten met een puntkomma (;), ook dit is niet noodzakelijk maar wel aan te raden.
Kortom: onderstaande query werkt ook, maar negeert diverse conventies.
select name from movies
We vragen met deze query uit de IMDb databse uit de tabel movies de waarden uit de kolom name op. De eerste zeven resultaten staan weergegeven in de tabel in de afbeelding.
Meerdere columns opvragen uit een tabel
Het is mogelijk om meerdere kolommen tegelijk op te vragen uit een tabel. kolomnamen kunnen in iedere gewenste volgorde achter elkaar opgesomd worden in de query. Het resultaat van de query zal de kolommen tonen in dezelfde volgorde als beschreven in de query.
SELECT name, rank FROM movies;
We vragen met deze query uit de IMDb databse uit de tabel movies de waarden uit de kolom name en rank op. De eerste zeven resultaten staan weergegeven in de tabel in de afbeelding.
Volledige tabel opvragen uit een database
Met onderstaande query vraag je een volledige tabel op. Let op: als een tabel veel rijen bevat, wat vaak zo is, zal dit erg lang duren.
SELECT * FROM movies;
We vragen met deze query uit de IMDb databse uit de tabel movies de waarden uit alle kolommen op. De eerste zeven resultaten staan weergegeven in de tabel in de afbeelding.
Ook interessant:
Wil je nog veel meer leren over SQL? Bekijk dan onze SQL cursus voor data analyse of download onderstaande opleidingsbrochure. In onze SQL cursus wisselen theorie en praktijkoefening elkaar steeds af. Nadat je deze training hebt gevolgd kun je zelfstandig met SQL werken. Je kunt ook altijd even contact opnemen via info@datasciencepartners.nl of 020 - 24 43 146 als je een vraag hebt.
Rik is data scientist en marketeer bij Data Science Partners. Vanuit zijn achtergrond op de Technische Universiteit Eindhoven heeft hij veel affiniteit met data. Na zijn studie heeft hij als consultant altijd met data gewerkt en tevens ervaring opgedaan in het geven van trainingen.