WHERE-statement

Een selectie maken
Je hebt gezien dat je met behulp van SQL een volledige tabel of een aantal kolommen uit een tabel op het scherm kunt tonen. Het zal ook voorkomen dat je niet de gegevens uit alle rijen wilt hebben.

Stel dat je een lijst wilt hebben van de namen van alle rekeninghouders die in Utrecht wonen. In dat geval zal er een selectie van rijen moeten worden gemaakt. Dit doe je door een voorwaarde te stellen:

SELECT rekeninghouder
FROM rekeninghouder
WHERE plaats = 'Utrecht';


Achter het where-statement staat de voorwaarde "plaats = 'Utrecht' ". Hiermee wordt bedoeld dat alleen die rekeningshouders moeten worden getoond die in de plaats Utrecht wonen.


In de volgende query wordt een lijst gemaakt van het rekening_id, het saldo en de status van de rekeningen waarbij het saldo groter is dan, of gelijk aan, € 1900,00.

SELECT rekening_id, saldo, status
FROM rekening
WHERE saldo >= 1900.00;


Kijk eens naar de notatie van het bedrag. In plaats van 1900,00 hebben we in de query 1900.00 genoteerd. Als decimaalteken hebben we een punt in plaats van een komma gebruikt. In Nederland en België zetten we een komma voor decimalen. Bijvoorbeeld 24,95. In Engelstalige landen wordt als decimaalteken een punt gebruikt en is de notatie dus 24.95 in plaats van 24,95.

SQL kent een aantal verschillende type data zoals tekst en getallen. Bij het maken van een tabel moet voor iedere kolom een geschikt datatype worden gekozen. Als het om tekst gaat, dan moet de waarde tussen aanhalingstekens staan. Is er sprake van een numeriek gegevens (getallen) dan moet je de aanhalingstekens weglaten. Een datum wordt in SQL tussen aanhalingstekens gezet.

De volgende query levert als resultaat een lijst op met de transactie_id, de datum en het bedrag. Alleen die rijen worden getoond, waarvan de datum na 19-12-2015 ligt.

SELECT transactie_id, datum, bedrag
FROM transactie
WHERE datum > '19-12-2015';


De Europese notatie voor een datum is eerst de dag, dan de maand en daarna het jaar. In de Verenigde Staten is dat eerst de maand, dan de dag en daarna het jaar. In de SQL-tool wordt de datum in de tabel transacties nog anders genoteerd. Namelijk eerst het jaar, daarna de maand en dan de dag.


In onze SQL-tool wordt de query dus:

SELECT transactie_id, datum, bedrag
FROM transactie
WHERE datum > '2015-12-19';



Een query in SQL heeft altijd de volgende basisstructuur:

SELECT <een of meer kolommen>
FROM   <een of meer tabellen>
WHERE  <een of meer voorwaarden>;