Freigeben über


COUNT_BIG (Transact-SQL)

Gibt die Anzahl von Elementen in einer Gruppe zurück. COUNT_BIG funktioniert wie die COUNT-Funktion. Der einzige Unterschied zwischen den beiden Funktionen sind die Rückgabewerte. COUNT_BIG gibt immer einen Wert vom bigint-Datentyp zurück. COUNT gibt immer einen Wert vom int-Datentyp zurück.

Gilt für: SQL Server (SQL Server 2008 bis aktuelle Version), Windows Azure SQL-Datenbank (ursprüngliche Version bis aktuelle Version).

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

COUNT_BIG ( { [ ALL | DISTINCT ] expression } | * )
   OVER ( [ partition_by_clause ] order_by_clause )

Argumente

  • ALL
    Wendet die Aggregatfunktion auf alle Werte an. ALL ist die Standardeinstellung.

  • DISTINCT
    Gibt an, dass COUNT_BIG die Anzahl von eindeutigen Werten, die ungleich NULL sind, zurückgibt.

  • expression
    Ein Ausdruck beliebigen Typs. Aggregatfunktionen und Unterabfragen sind nicht zulässig.

  • *
    Gibt an, dass alle Zeilen gezählt werden müssen, um die Gesamtzahl der Zeilen einer Tabelle zurückzugeben. COUNT_BIG(*) weist keine Parameter auf und kann nicht zusammen mit DISTINCT verwendet werden. COUNT_BIG(*) erfordert keinen expression-Parameter, da definitionsgemäß keine Informationen zu einer bestimmten Spalte verwendet werden. COUNT_BIG(*) gibt die Anzahl der Zeilen in einer angegebenen Tabelle zurück, ohne Duplikate zu entfernen. Dabei werden alle Zeilen einzeln gezählt. Dies schließt Zeilen mit NULL-Werten ein.

  • ALL
    Wendet die Aggregatfunktion auf alle Werte an. ALL ist die Standardeinstellung.

  • DISTINCT
    Gibt an, dass AVG nur für jede eindeutige Instanz eines Werts ausgeführt werden soll, unabhängig davon, wie oft der Wert vorkommt.

  • expression
    Ein Ausdruck der genauen numerischen oder ungefähren numerischen Datentypkategorie, mit Ausnahme des Datentyps bit. Aggregatfunktionen und Unterabfragen sind nicht zulässig.

  • OVER ( [ partition_by_clause ] order_by_clause**)**
    partition_by_clause teilt das von der FROM-Klausel erzeugte Resultset in Partitionen, auf die die Funktion angewendet wird. Wird dies nicht angegeben, verarbeitet die Funktion alle Zeilen des Abfrageresultsets als einzelne Gruppe. order_by_clause bestimmt die logische Reihenfolge, in der der Vorgang ausgeführt wird. order_by_clause ist erforderlich. Weitere Informationen finden Sie unter OVER-Klausel (Transact-SQL).

Rückgabetypen

bigint

Hinweise

COUNT_BIG(*) gibt die Anzahl von Elementen in einer Gruppe zurück. Dies schließt NULL-Werte und Duplikate ein.

COUNT_BIG (ALL expression) wertet expression für jede Zeile in einer Gruppe aus und gibt die Anzahl der Werte zurück, die nicht NULL sind.

COUNT_BIG (DISTINCT expression) wertet expression für jede Zeile in einer Gruppe aus und gibt die Anzahl der eindeutigen Werte zurück, die nicht NULL sind.

COUNT_BIG ist eine deterministische Funktion, wenn sie ohne die OVER- und ORDER BY-Klauseln angegeben wird. Sie ist nicht deterministisch, wenn sie mit den OVER- und ORDER BY-Klauseln angegeben wird. Weitere Informationen finden Sie unter Deterministische und nicht deterministische Funktionen.

Siehe auch

Verweis

Aggregatfunktionen (Transact-SQL)

COUNT (Transact-SQL)

int, bigint, smallint und tinyint (Transact-SQL)

OVER-Klausel (Transact-SQL)