Heim > Datenbank > MySQL-Tutorial > Wie zeige ich Nullzählungen für Mitarbeiter ohne Abonnements in SQL-Abfragen an?

Wie zeige ich Nullzählungen für Mitarbeiter ohne Abonnements in SQL-Abfragen an?

Barbara Streisand
Freigeben: 2024-11-29 20:49:11
Original
668 Leute haben es durchsucht

How to Display Zero Counts for Employees Without Subscriptions in SQL Queries?

Behebung des SQL-Abfrageproblems: Anzeige von Nullzählungen in der COUNT-Aggregation

Im dargestellten Szenario besteht das Ziel darin, die Abonnementanzahl für alle zu ermitteln Mitarbeiter, auch solche ohne Einträge in der Tabelle der Mailing-Abonnements. Die erste Abfrage mit einem inneren Join ergab nur Zählungen für Mitarbeiter mit übereinstimmenden Datensätzen in der Mailing-Abonnementtabelle, ausgenommen Mitarbeiter ohne Abonnements.

Um dieses Problem zu beheben, sollten Sie die Verwendung eines linken Joins (LEFT JOIN) in der Abfrage in Betracht ziehen. Bei einem Left Join bleiben alle Zeilen der linken Tabelle (Employee) erhalten, auch wenn in der rechten Tabelle (mailingSubscriptions) keine passenden Zeilen vorhanden sind. Die folgende Abfrage integriert einen Left-Join, um das gewünschte Ergebnis zu erzielen:

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

Diese überarbeitete Abfrage stellt sicher, dass alle Mitarbeiter in den Ergebnissen enthalten sind, und die COUNT-Aggregation gibt 0 für Mitarbeiter ohne passende Abonnements in den Mailing-Abonnements zurück Tisch. Durch den Outer-Join entfällt die Einschränkung von Inner-Joins, die nur Zeilen mit übereinstimmenden Datensätzen in beiden Tabellen anzeigen.

Durch die Ausführung der geänderten Abfrage mit einem Left-Join zeigt die Tabelle die Abonnementanzahlen für alle Mitarbeiter, einschließlich dieser, korrekt an ohne Abonnements. Dies ermöglicht eine vollständige und genaue Darstellung der Daten, wobei sowohl Mitarbeiter mit als auch ohne Abonnements in der Tabelle „mailingSubscriptions“ berücksichtigt werden.

Das obige ist der detaillierte Inhalt vonWie zeige ich Nullzählungen für Mitarbeiter ohne Abonnements in SQL-Abfragen an?. 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