集計関数
Google BigQuery API シンタックス
Google BigQuery API は、追加のSQL 演算子および関数を提供します。利用可能なシンタックスの完全なリストはこちらです。https://cloud.google.com/bigquery/query-reference
集計関数の例
以下にSQL 集計関数の例をいくつか示します。 GROUP BY 句を使用して、指定したGROUP BY 条件に基づいて行を集計することもできます。これはレポートツールになります。
COUNT
クエリ条件に一致する行の数を返します。
SELECT COUNT(*) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
COUNT(DISTINCT)
クエリ条件に一致する、null 以外の個別のフィールド値の数を返します。
SELECT COUNT(DISTINCT actor.attributes.email) AS DistinctValues FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
AVG
カラムの値の平均を返します。
SELECT repository.name, AVG(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
MIN
カラムの値の最小値を返します。
SELECT MIN(repository.watchers), repository.name FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
MAX
カラムの値の最大値を返します。
SELECT repository.name, MAX(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
SUM
カラムの値の合計を返します。
SELECT SUM(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
COUNT
クエリ条件に一致する行の数を返します。
SELECT COUNT(*) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
COUNT(DISTINCT)
クエリ条件に一致する、null 以外の個別のフィールド値の数を返します。
SELECT COUNT(DISTINCT actor.attributes.email) AS DistinctValues FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
AVG
カラムの値の平均を返します。
SELECT repository.name, AVG(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
MIN
カラムの値の最小値を返します。
SELECT MIN(repository.watchers), repository.name FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
MAX
カラムの値の最大値を返します。
SELECT repository.name, MAX(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework' GROUP BY repository.name
SUM
カラムの値の合計を返します。
SELECT SUM(repository.watchers) FROM [publicdata].[samples].github_nested WHERE repository.name = 'EntityFramework'
CORR
数値ペアのセットのピアソン相関係数を返します。SELECT repository.name, CORR(repository.watchers, repository.size) FROM [publicdata].[samples].github_nested
COVAR_POP
数値ペアのセットにより計算された値の母共分散を計算します。SELECT repository.name, COVAR_POP(repository.watchers, repository.size) FROM [publicdata].[samples].github_nested
COVAR_SAMP
数値ペアのセットにより計算された値の標本共分散を計算します。SELECT repository.name, COVAR_SAMP(repository.watchers, repository.size) FROM [publicdata].[samples].github_nested
NTH
n が定数の場合、関数の範囲のn 番目のシーケンシャル値を返します。NTH 関数は1から始まり、zero 番はありません。この関数の範囲がn より少ない値しか有しない場合には、関数はNULL を返します。SELECT repository.name, NTH(n, actor.attributes.email) FROM [publicdata].[samples].github_nested
STDDEV
計算された値の標準偏差を返します。NULL 値の行は計算に含まれません。SELECT repository.name, STDDEV(repository.watchers) FROM [publicdata].[samples].github_nested