Heim >Datenbank >MySQL-Tutorial >Wie kann ich mit COUNT(DISTINCT) unterschiedliche Programmnamen in SQL Server zählen?

Wie kann ich mit COUNT(DISTINCT) unterschiedliche Programmnamen in SQL Server zählen?

DDD
DDDOriginal
2025-01-14 19:07:48370Durchsuche

How to Count Unique Program Names in SQL Server with COUNT(DISTINCT)

Eindeutige Programmnamen mit COUNT(DISTINCT) in SQL Server zählen

Dieses SQL Server 2005-Beispiel zeigt, wie verschiedene Programmnamen effizient gezählt, nach Programmtyp gruppiert und nach Push-Nummer gefiltert werden. Bei einer vorherigen Abfrage wurden nur alle Programmnamen gezählt, keine eindeutigen.

Um unterschiedliche Programmnamen genau zu zählen, nutzen wir die Funktion COUNT(DISTINCT):

<code class="language-sql">COUNT(DISTINCT <expression>)</code>

Diese Funktion zählt nur die eindeutigen Nicht-Null-Werte des angegebenen Ausdrucks innerhalb jeder Gruppe. Hier lautet der Ausdruck program_name.

Die verbesserte Abfrage lautet:

<code class="language-sql">SELECT program_type AS [Type],
       COUNT(DISTINCT program_name) AS [Count]
FROM   cm_production
WHERE  push_number = @push_number
GROUP  BY program_type;</code>

Diese Abfrage liefert genau die Anzahl der eindeutigen Programmnamen für jeden Programmtyp, sofern ein bestimmtes @push_number gegeben ist. Dies behebt das ursprüngliche Problem der Zählung unterschiedlicher Werte und nicht der Gesamtzahl der Einträge.

Das obige ist der detaillierte Inhalt vonWie kann ich mit COUNT(DISTINCT) unterschiedliche Programmnamen in SQL Server zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn