Função de janela analítica cume_dist
Aplica-se a: SQL do Databricks Runtime do Databricks
Retorna a posição de um valor relativo a todos os valores na partição.
Sintaxe
cume_dist() over_clause
Argumentos
- over_clause: a cláusula que descreve a janela. Confira Funções de janela.
Retornos
Um DOUBLE.
A cláusula OVER da função de janela precisa incluir uma cláusula ORDER BY.
Se a ordem não for exclusiva, as duplicatas terão a mesma posição relativa posterior.
cume_dist() over(order by expr)
é semelhante, mas não idêntico a rank() over(order by position) / count(*)
, pois a função de janela de classificação rank produz a ordem absoluta mais antiga.
Exemplos
> SELECT a, b, cume_dist() OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 0.6666666666666666
A1 1 0.6666666666666666
A1 2 1.0
A2 3 1.0