Heim > Datenbank > MySQL-Tutorial > Hauptteil

COUNT(*) vs. COUNT(column_name): Wann sollten Sie welche MySQL-Funktion verwenden?

Barbara Streisand
Freigeben: 2024-11-24 09:33:17
Original
154 Leute haben es durchsucht

COUNT(*) vs. COUNT(column_name): When Should You Use Which MySQL Function?

Die Unterschiede zwischen COUNT(*) und COUNT(Spaltenname) verstehen

In MySQL sind COUNT(*) und COUNT(Spaltenname) Funktionen spielen eine entscheidende Rolle bei der Datenaggregation. Obwohl beide die Anzahl der Zeilen in einem Ergebnissatz zurückgeben, gibt es subtile Unterschiede zwischen ihnen, die sich auf die Genauigkeit und Leistung Ihrer Abfragen auswirken können.

COUNT(*) vs. COUNT(column_name)

  • COUNT(*): Diese Funktion zählt alle Zeilen im Ergebnissatz, unabhängig davon ob bestimmte Spalten NULL-Werte enthalten. Ihr Hauptvorteil ist ihre Geschwindigkeit, da sie nicht nach NULL-Werten suchen muss.
  • COUNT(column_name): Im Gegensatz zu COUNT() zählt diese Funktion nur Zeilen, in denen die Die angegebene Spalte ist nicht null. Durch den Ausschluss von Nullwerten liefert COUNT(column_name) eine genauere Zählung nicht leerer Werte. Allerdings kann es in bestimmten Szenarien langsamer als COUNT() sein, insbesondere wenn es um große Datenmengen geht und wenn Nullwerte vorhanden sind.

Alternative: COUNT(1)

Die Funktion COUNT(1) verhält sich im Wesentlichen genauso wie COUNT(). Es zählt alle Zeilen in der Ergebnismenge, da 1 niemals null ist. Daher bietet COUNT(1) die gleichen Leistungsvorteile wie COUNT().

Demonstration

Um die Unterschiede zwischen diesen Funktionen zu veranschaulichen, betrachten Sie die folgende Beispiel:

CREATE TABLE table1 (x INT NULL);
INSERT INTO table1 (x) VALUES (1), (2), (NULL);

SELECT
    COUNT(*) AS a,
    COUNT(x) AS b,
    COUNT(1) AS c
FROM table1;
Nach dem Login kopieren

Ergebnis:

a   b   c
3   2   3
Nach dem Login kopieren

Wie Sie sehen können, gibt COUNT() 3 zurück und zählt sowohl Null- als auch Nicht-Nullwerte . COUNT(x) gibt 2 zurück, ohne den Nullwert. Und COUNT(1) entspricht der Anzahl von COUNT() bei 3.

Das obige ist der detaillierte Inhalt vonCOUNT(*) vs. COUNT(column_name): Wann sollten Sie welche MySQL-Funktion verwenden?. 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