COUNT_BIG (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric の SQL 分析エンドポイントMicrosoft Fabric のウェアハウス

この関数は、グループ内で見つかった項目数を返します。 COUNT_BIGCOUNT 関数と同じように動作します。 これらの関数の違いは、戻り値のデータ型のみです。 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> ] )  

Note

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 関数が適用されます。 指定しない場合、関数ではクエリ結果セットのすべての行を 1 つのグループとして扱います。 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)