As seções a seguir descrevem as funções de numeração compatíveis com o BigQuery. As funções de numeração são um subconjunto de funções analíticas. Para uma explicação de como são funções analíticas, consulte Conceitos da função analítica. Para uma descrição de como são funções de numeração, consulte os Conceitos da função de numeração.
Requisitos da cláusula OVER
:
PARTITION BY
: opcional.ORDER BY
: obrigatório, exceto paraROW_NUMBER()
.window_frame_clause
: não permitido
RANK
Descrição
Retorna a classificação de ordinal (baseada em 1) de cada linha dentro da partição ordenada.
Todas as linhas dos pares recebem o mesmo valor da classificação. A linha ou o grupo de linhas de pares seguintes recebem um valor da classificação que aumenta baseado no número de pares com o valor da classificação anterior, em vez de DENSE_RANK
, que sempre aumenta em 1.
Tipos de argumentos compatíveis
INT64
DENSE_RANK
Descrição
Retorna a classificação de ordinal (baseada em 1) de cada linha dentro da partição da janela. Todas as linhas de pares recebem o mesmo valor da classificação. O valor seguinte é incrementado em um.
Tipos de argumentos compatíveis
INT64
PERCENT_RANK
Descrição
Retorna a classificação do percentil de uma linha definida como (RK-1)/(NR-1), na qual RK é o RANK
da linha e NR é o número de linhas na partição.
Retorna 0 se NR = 1.
Tipos de argumentos compatíveis
FLOAT64
CUME_DIST
Descrição
Retorna a classificação relativa de uma linha definida como NP/NR. NP é definido como o número de linhas que precedem ou são pares da linha atual. NR é o número de linhas da partição.
Tipos de argumentos compatíveis
FLOAT64
NTILE
NTILE(constant_integer_expression)
Descrição
Essa função divide as linhas em intervalos constant_integer_expression
com base na ordenação de linhas e retorna o número do intervalo com base em 1 que é atribuído a cada linha. O número de linhas nos intervalos pode diferir em 1, no máximo.
Os valores restantes, isto é, o número de linhas divididas por intervalos, são distribuídos um para cada intervalo, começando com o intervalo 1. Se constant_integer_expression
for avaliado como NULL, 0 ou negativo, um erro será fornecido.
Tipos de argumentos compatíveis
INT64
ROW_NUMBER
Descrição
Não requer a cláusula ORDER BY
. Retorna o ordinal da linha sequencial (baseado em 1) de cada linha de cada partição ordenada. Se a cláusula ORDER BY
não for especificada, o resultado será não determinístico.
Tipos de argumentos compatíveis
INT64