Função de agregação collect_set
Aplica-se a: SQL do Databricks Runtime do Databricks
Retorna uma matriz que consiste em todos os valores únicos na expr
dentro do grupo.
Sintaxe
collect_set(expr) [FILTER ( WHERE cond ) ]
Essa função também pode ser invocada como uma função de janela usando a cláusula OVER
.
Argumentos
expr
: uma expressão de qualquer tipo, excetoMAP
.cond
: uma expressão booliana opcional que filtra as linhas usadas para agregação.
Retornos
Uma ARRAY do tipo de argumento.
A ordem dos elementos na matriz é não determinística. Os valores NULL são excluídos.
Exemplos
> SELECT collect_set(col) FROM VALUES (1), (2), (NULL), (1) AS tab(col);
[1,2]
> SELECT collect_set(col1) FILTER(WHERE col2 = 10)
FROM VALUES (1, 10), (2, 10), (NULL, 10), (1, 10), (3, 12) AS tab(col1, col2);
[1,2]