Heim >Datenbank >MySQL-Tutorial >Wie kann ich mit COUNT(DISTINCT) unterschiedliche Programmnamen 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!