sql >> Databáze >  >> RDS >> Database

Jak počítat odlišné hodnoty v SQL

Problém:

Chtěli byste spočítat, kolik různých hodnot, které nejsou NULL, je v daném sloupci.

Příklad:

Naše databáze obsahuje tabulku s názvem customer s údaji v následujících sloupcích:id , first_name , last_name a city .

id křestní_jméno last_name město
1 Jan Williams Chicago
2 Tome Hnědá Austin
3 Lucy Miller Chicago
4 Ellie Smith Dallas
5 Brian Jones Austin
6 Allan Davis NULL

Pojďme najít počet různých (a jiných než NULL ) města.

Řešení:

SELECT COUNT( DISTINCT city) as cities
FROM customer;

Tento dotaz vrátí počet měst, kde zákazníci žijí:

města
3

Diskuse:

Chcete-li spočítat počet různých hodnot, které jsou uloženy v daném sloupci, stačí zadat sloupec, který předáte, do COUNT fungovat jako DISTINCT . Když je uveden sloupec, COUNT vrátí počet hodnot v tomto sloupci. V kombinaci s DISTINCT vrátí pouze počet jedinečných (a jiných než NULL) hodnot.


  1. Jednoduchá parametrizace a triviální plány — 1. část

  2. Rychle vložte 2 miliony řádků do SQL Serveru

  3. Jak obnovit databázi pomocí Správce zálohování

  4. Odečtěte sekundy od hodnoty Datetime v MariaDB