COUNT_BIG (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric 中的 SQL 分析终结点Microsoft Fabric 中的仓库

此函数返回组中找到的项数量。 COUNT_BIG 的操作与 COUNT 函数类似。 这些函数区别只在于其返回的值的数据类型。 COUNT_BIG 始终返回“bigint”数据类型值。 COUNT 始终返回“int”数据类型值。

Transact-SQL 语法约定

语法


-- Aggregation Function Syntax  
COUNT_BIG ( { [ [ ALL | DISTINCT ] expression ] | * } )  
  
-- Analytic Function Syntax  
COUNT_BIG ( [ ALL ] { expression | * } ) OVER ( [ <partition_by_clause> ] )  

注意

若要查看 SQL Server 2014 (12.x) 及更早版本的 Transact-SQL 语法,请参阅早期版本文档

自变量

ALL
向所有值应用此聚合函数。 ALL 充当默认值。

DISTINCT
指定 COUNT_BIG 返回唯一非 Null 值的数量。

expression
任何类型的表达式COUNT_BIG 不支持表达式中的聚合函数或子查询。

*
指定 COUNT_BIG 应对所有行计数,以确定要返回的总表行计数。 COUNT_BIG(*) 不采用任何参数,也不支持使用 DISTINCT。 COUNT_BIG(*) 不需要“expression”参数,因为根据定义,该函数不使用有关任何特定列的信息。 COUNT_BIG(*) 返回指定表中的行数,但保留副本行。 它会单独为每一行计数,包括包含 null 值的行。

OVER ( [ partition_by_clause ] [ order_by_clause ] )
“partition_by_clause”FROM 子句生成的结果集划分为要应用 COUNT_BIG 函数的分区。 如果未指定,则此函数将查询结果集的所有行视为单个组。 “order_by_clause”确定操作的逻辑顺序。 有关详细信息,请参阅 OVER 子句 (Transact-SQL)

返回类型

bigint

备注

COUNT_BIG(*) 返回组中的项数。 包括 NULL 值和重复项。

COUNT_BIG (ALL expression) 计算组中每行的 expression,然后返回非 null 值的数量。

COUNT_BIG (DISTINCT expression) 计算组中每行的 expression,然后返回独一无二的非 null 值的数量。

COUNT_BIG 不与 OVER 和 ORDER BY 子句配合使用时为确定性函数。 与 OVER 和 ORDER BY 子句一同指定时,COUNT_BIG 具有不确定性。 请参阅确定性函数和不确定性函数获取详细信息。

示例

请参阅 COUNT (Transact-SQL) 获取示例。

请参阅

聚合函数 (Transact-SQL)
COUNT (Transact-SQL)
int、bigint、smallint 和 tinyint (Transact-SQL)
OVER 子句 (Transact-SQL)