Probleem:
U wilt tellen hoeveel verschillende niet-NULL-waarden er in een bepaalde kolom staan.
Voorbeeld:
Onze database heeft een tabel met de naam customer
met gegevens in de volgende kolommen:id
, first_name
, last_name
, en city
.
id | voornaam | achternaam | stad |
---|---|---|---|
1 | Jan | Willems | Chicago |
2 | Tom | Bruin | Austin |
3 | Lucy | Miller | Chicago |
4 | Ellie | Smith | Dallas |
5 | Brian | Jones | Austin |
6 | Allan | Davis | NULL |
Laten we het aantal verschillende (en niet-NULL
) steden.
Oplossing:
SELECT COUNT( DISTINCT city) as cities FROM customer;
Deze zoekopdracht retourneert het aantal steden waar klanten wonen:
steden |
---|
3 |
Discussie:
Om het aantal verschillende waarden te tellen dat in een bepaalde kolom is opgeslagen, hoeft u alleen maar de kolom aan te duiden die u doorgeeft aan de COUNT
functioneren als DISTINCT
. Wanneer een kolom wordt gegeven, COUNT
geeft het aantal waarden in die kolom terug. Dit combineren met DISTINCT
geeft alleen het aantal unieke (en niet-NULL) waarden terug.