Heim >Datenbank >MySQL-Tutorial >COUNT(*) vs. COUNT(Spaltenname): Welche SQL-Aggregatfunktion sollte ich verwenden?

COUNT(*) vs. COUNT(Spaltenname): Welche SQL-Aggregatfunktion sollte ich verwenden?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-07 08:06:40349Durchsuche

COUNT(*) vs. COUNT(column-name): Which SQL Aggregate Function Should I Use?

Was ist korrekter: COUNT(*) vs. COUNT(Spaltenname)?

Die SQL-Aggregatfunktion COUNT kann verwendet werden auf zwei Arten: COUNT(*) und COUNT(Spaltenname). Während beide Methoden darauf abzielen, die Anzahl der Zeilen zu zählen, gibt es subtile Unterschiede, die berücksichtigt werden müssen.

COUNT(*)

  • Zählt alle Zeilen, auch die mit NULL-Werte.
  • Nützlich, wenn Sie die Gesamtzahl der Datensätze unabhängig von den Daten ermitteln möchten Verfügbarkeit.

COUNT(column-name)

  • Zählt nur Nicht-NULL-Werte.
  • Spezifischer und kann sein Wird verwendet, um die Anzahl der Zeilen mit einem bestimmten Wert zu zählen oder NULL-Werte herauszufiltern.

In Ihrem Beispielcode:

  • COUNT(*): Zählt alle Zeilen in der Gruppe, einschließlich aller Zeilen mit fehlenden Werten.
  • COUNT(customerid): Zählt nur Zeilen mit Kunden-IDs. Es filtert alle Zeilen mit NULL-Kunden-IDs heraus.

Die Wahl zwischen COUNT(*) und COUNT(Spaltenname) hängt von der gewünschten Ausgabe ab:

  • Um die zu zählen Gesamtzahl der Zeilen, unabhängig von NULL-Werten, verwenden Sie COUNT(*).
  • Um nur Nicht-NULL-Werte zu zählen, verwenden Sie COUNT(Spaltenname).

Das obige ist der detaillierte Inhalt vonCOUNT(*) vs. COUNT(Spaltenname): Welche SQL-Aggregatfunktion sollte ich verwenden?. 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