Funções de numeração no SQL padrão

Veja nas seções a seguir a descrição das 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 para ROW_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 de constant_integer_expression com base na ordenação de linhas. Ela retorna o número do intervalo baseado 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, ocorrerá um erro.

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 estiver especificada, o resultado será não determinista.

Tipos de argumentos compatíveis

INT64

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.