Problem:
Du vil gerne tælle, hvor mange forskellige ikke-NULL-værdier, der er i en given kolonne.
Eksempel:
Vores database har en tabel ved navn customer med data i følgende kolonner:id , first_name , last_name og city .
| id | fornavn | efternavn | by |
|---|---|---|---|
| 1 | John | Williams | Chicago |
| 2 | Tom | Brun | Austin |
| 3 | Lucy | Møller | Chicago |
| 4 | Ellie | Smith | Dallas |
| 5 | Brian | Jones | Austin |
| 6 | Allan | Davis | NULL |
Lad os finde antallet af forskellige (og ikke-NULL). ) byer.
Løsning:
SELECT COUNT( DISTINCT city) as cities FROM customer;
Denne forespørgsel returnerer antallet af byer, hvor kunderne bor:
| byer |
|---|
| 3 |
Diskussion:
For at tælle antallet af forskellige værdier, der er gemt i en given kolonne, skal du blot udpege den kolonne, du sender ind til COUNT fungere som DISTINCT . Når der gives en kolonne, COUNT returnerer antallet af værdier i den kolonne. Ved at kombinere dette med DISTINCT returnerer kun antallet af unikke (og ikke-NULL) værdier.