Heim > Datenbank > MySQL-Tutorial > Wie kann ich in MySQL COUNT() Nullzählungen für Zeilen mit Nullwerten anzeigen?

Wie kann ich in MySQL COUNT() Nullzählungen für Zeilen mit Nullwerten anzeigen?

Susan Sarandon
Freigeben: 2024-12-05 03:02:12
Original
243 Leute haben es durchsucht

How Can I Display Zero Counts in MySQL COUNT() for Rows with Null Values?

Anzeige von Nullzählungen in MySQL COUNT

Beim Zählen von Werten mit der Funktion COUNT() in MySQL werden häufig Zeilen mit Nullwerten ausgeschlossen. Dies kann zu Schwierigkeiten führen, wenn Sie versuchen, die Anzahl aller Zeilen anzuzeigen, einschließlich solcher ohne entsprechende Werte in anderen Tabellen.

Behebung des Problems

Um dieses Problem zu beheben, müssen Sie kann einen Outer Join in Kombination mit der COUNT()-Funktion verwenden. Die folgende Abfrage verwendet einen LEFT JOIN, um alle Zeilen aus der Tabelle „Employee“ einzubeziehen, unabhängig davon, ob sie entsprechende Einträge in der Tabelle „mailingSubscriptions“ haben:

SELECT c.name, count(m.mailid)
FROM Employee
   LEFT JOIN mailingSubscriptions as m ON c.Name = m.EmployeeName
GROUP BY c.name;
Nach dem Login kopieren

Erläuterung

  • Der LEFT JOIN kombiniert Zeilen aus der Employee-Tabelle mit passenden Zeilen aus den mailingSubscriptions Tabelle.
  • Der count(m.mailid)-Ausdruck zählt die Anzahl der Nicht-Null-Werte in der Mailid-Spalte.
  • Die GROUP BY c.name-Klausel aggregiert die Ergebnisse nach dem Namen des Mitarbeiters, Bereitstellung der Abonnementanzahl für jeden Mitarbeiter.

Ergebnis

Diese Abfrage wird zurückgegeben eine Tabelle mit zwei Spalten: Name und Abonnementanzahl. In der Spalte „Anzahl der Abonnements“ wird die Anzahl der Abonnements für jeden Mitarbeiter angezeigt, bzw. 0 für Mitarbeiter ohne Abonnements.

Das obige ist der detaillierte Inhalt vonWie kann ich in MySQL COUNT() Nullzählungen für Zeilen mit Nullwerten anzeigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage