GROUP_ARRAY_MOVING_SUM (Lakehouse v1)
A função GROUP_ARRAY_MOVING_SUM calcula a soma móvel dos valores de entrada. A função pode receber o tamanho da janela como parâmetro. Se ele não for especificado, a função usa um tamanho de janela igual ao número de valores de entrada.
Sintaxe do Analyze
Seção intitulada “Sintaxe do Analyze”func.group_array_moving_sum(<expr>)Exemplos do Analyze
Seção intitulada “Exemplos do Analyze”table.user_id, func.group_array_moving_sum(table.request_num)
| user_id | request_num ||---------|-------------|| 1 | [10,23,43] || 2 | [20,45,70] || 3 | [15,36,62] |Sintaxe SQL
Seção intitulada “Sintaxe SQL”GROUP_ARRAY_MOVING_SUM(<expr>)
GROUP_ARRAY_MOVING_SUM(<window_size>)(<expr>)Argumentos
Seção intitulada “Argumentos”| Argumentos | Descrição |
|---|---|
<window_size> |
Qualquer expressão numérica |
<expr> |
Qualquer expressão numérica |
Tipo de retorno
Seção intitulada “Tipo de retorno”Retorna um array com elementos do mesmo tipo que os dados originais.
Exemplos de SQL
Seção intitulada “Exemplos de SQL”-- Create a table and insert sample dataCREATE TABLE hits ( user_id INT, request_num INT);
INSERT INTO hits (user_id, request_num)VALUES (1, 10), (2, 15), (3, 20), (1, 13), (2, 21), (3, 25), (1, 30), (2, 41), (3, 45);
SELECT user_id, GROUP_ARRAY_MOVING_SUM(2)(request_num) AS request_numFROM hitsGROUP BY user_id;
| user_id | request_num ||---------|-------------|| 1 | [10,23,43] || 2 | [20,45,70] || 3 | [15,36,62] |