- Categorias:
Funções de agregação (Geral) , Funções de janela
KURTOSIS¶
Retorna a curtose em excesso populacional de registros não NULL. Se todos os registros dentro de um grupo forem NULL, a função retorna NULL.
A seguinte fórmula é usada para calcular o excesso de curtose da população:
onde:
\(n\) denota o número de registros diferentes de zero.
\(m_4\) denota o quarto momento central da amostra.
\(k_2\) denota o estimador simétrico imparcial da variância.
Sintaxe¶
Função de agregação
KURTOSIS( <expr> )
Função de janela
KURTOSIS( <expr> ) OVER ( [ PARTITION BY <expr2> ] )
Argumentos¶
expr
Esta é uma expressão que é avaliada como um tipo de dados numérico (INTEGER, FLOAT, DECIMAL etc.).
expr2
A expressão que define os grupos ou janelas individuais.
Retornos¶
Retorna DOUBLE se o tipo de dados de entrada for DOUBLE/FLOAT.
Retorna DECIMAL se o tipo de dados de entrada for outro tipo de dados numéricos.
Notas de uso¶
Para entradas com menos de quatro registros, KURTOSIS retorna NULL.
Quando usada como uma função de janela, esta função não oferece suporte a:
Subcláusula ORDER BY na cláusula OVER().
Quadros de janela.
Exemplos¶
Criar uma tabela e carregar os dados:
create or replace table aggr(k int, v decimal(10,2), v2 decimal(10, 2)); insert into aggr values (1, 10, null), (2, 10, 12), (2, 20, 22), (2, 25, null), (2, 30, 35);
Exibir os dados:
select * from aggr order by k, v; +---+-------+-------+ | K | V | V2 | |---+-------+-------| | 1 | 10.00 | NULL | | 2 | 10.00 | 12.00 | | 2 | 20.00 | 22.00 | | 2 | 25.00 | NULL | | 2 | 30.00 | 35.00 | +---+-------+-------+
Consultar os dados:
select KURTOSIS(K), KURTOSIS(V), KURTOSIS(V2) from aggr; +----------------+-----------------+--------------+ | KURTOSIS(K) | KURTOSIS(V) | KURTOSIS(V2) | |----------------+-----------------+--------------| | 5.000000000000 | -2.324218750000 | NULL | +----------------+-----------------+--------------+