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.