COUNT_BIG (Transact-SQL)

返回组中的项数。 COUNT_BIG 的用法与 COUNT 函数类似。 两个函数唯一的差别是它们的返回值。 COUNT_BIG 始终返回 bigint 数据类型值。 COUNT 始终返回 int 数据类型值。

适用范围:SQL Server(SQL Server 2008 至当前版本),Windows Azure SQL Database(初始版本至当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

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

参数

  • ALL
    向所有值应用此聚合函数。 ALL 为默认值。

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

  • expression
    任何类型的表达式。 不允许使用聚合函数和子查询。

  • *
    指定应该计算所有行以返回表中行的总数。 COUNT_BIG(*) 不需要任何参数,而且不能与 DISTINCT 一起使用。 COUNT(*) 不需要 expression 参数,因为根据定义,该函数不使用有关任何特定列的信息。 COUNT_BIG(*) 返回指定表中的行数并将重复行计算在内。 它对各行分别计数。 包括包含空值的行。

  • ALL
    向所有值应用此聚合函数。 ALL 为默认值。

  • DISTINCT
    指定 AVG 只在每个值的唯一实例上执行,而不管该值出现了多少次。

  • expression
    是精确数值或近似数值数据类型类别(bit 数据类型除外)的表达式。 不允许使用聚合函数和子查询。

  • OVER ( [ partition_by_clause ] order_by_clause**)**
    partition_by_clause 将由 FROM 子句生成的结果集划分成 RANK 函数适用的分区。 如果未指定,则此函数将查询结果集的所有行视为单个组。 order_by_clause 确定对执行此操作的逻辑顺序。 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 子句一同指定时,它具有不确定性。 有关详细信息,请参阅确定性函数和不确定性函数

请参阅

参考

聚合函数 (Transact-SQL)

COUNT (Transact-SQL)

int、bigint、smallint 和 tinyint (Transact-SQL)

OVER 子句 (Transact-SQL)