Database
 sql >> Datenbank >  >> RDS >> Database

So zählen Sie unterschiedliche Werte in SQL

Problem:

Sie möchten zählen, wie viele verschiedene Nicht-NULL-Werte in einer bestimmten Spalte vorhanden sind.

Beispiel:

Unsere Datenbank hat eine Tabelle namens customer mit Daten in den folgenden Spalten:id , first_name , last_name , und city .

id Vorname Nachname Stadt
1 Johannes Williams Chicago
2 Tom Braun Austin
3 Lucy Müller Chicago
4 Ellie Smith Dallas
5 Brian Jones Austin
6 Allan Davis NULL

Lassen Sie uns die Anzahl der unterschiedlichen (und Nicht-NULL) ermitteln ) Städte.

Lösung:

SELECT COUNT( DISTINCT city) as cities
FROM customer;

Diese Abfrage gibt die Anzahl der Städte zurück, in denen Kunden leben:

Städte
3

Diskussion:

Um die Anzahl der verschiedenen Werte zu zählen, die in einer bestimmten Spalte gespeichert sind, müssen Sie einfach die Spalte bestimmen, die Sie an COUNT übergeben Funktion als DISTINCT . Wenn eine Spalte angegeben wird, COUNT gibt die Anzahl der Werte in dieser Spalte zurück. Kombinieren Sie dies mit DISTINCT gibt nur die Anzahl der eindeutigen (und Nicht-NULL-)Werte zurück.