SQL til at finde antallet af forskellige værdier i en kolonne

Jeg kan vælge alle de forskellige værdier i en kolonne på følgende måder:

  • SØG DISTINCT column_name FROM table_name;`
  • SELECT column_name FROM table_name GROUP BY column_name;

Men hvordan får jeg rækkeantallet fra denne forespørgsel? Er det nødvendigt med en underafspørgsel?

Løsning

Du kan bruge nøgleordet DISTINCT i den aggregerede funktion COUNT:

SELECT COUNT(DISTINCT column_name) AS some_alias FROM table_name

Dette tæller kun de forskellige værdier for den pågældende kolonne.

Kommentarer (5)
SELECT COUNT(DISTINCT column_name) FROM table as column_name_count;

skal du tælle den særskilte kolonne og derefter give den et alias.

Kommentarer (0)
select Count(distinct columnName) as columnNameCount from tableName 
Kommentarer (0)