COUNT_BIG (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics 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> ] )
引數
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 子句使用時,是具決定性的函數。 COUNT_BIG 搭配 OVER 和 ORDER BY 子句使用時,不具決定性。 如需詳細資訊,請參閱決定性與非決定性函數。
範例
請參閱 COUNT (Transact-SQL) (部分機器翻譯) 以取得範例。
另請參閱
彙總函式 (Transact-SQL)
COUNT (Transact-SQL)
int、bigint、smallint 和 tinyint (Transact-SQL)
OVER 子句 (Transact-SQL)