- Categorias:
Funções de agregação (Geral) , Sintaxe e uso da função de janela (Geral)
STDDEV, STDDEV_SAMP¶
Retorna o desvio padrão da amostra (raiz quadrada da variância da amostra) de valores não NULL. STDDEV e STDDEV_SAMP são aliases para a mesma função.
Consulte também STDDEV_POP, que retorna o desvio padrão da população (raiz quadrada da variância).
Sintaxe¶
Função de agregação
Função de janela
Para obter mais detalhes sobre a sintaxe window_frame, consulte Notas de uso para quadros de janela.
Argumentos¶
expr1Uma expressão que é avaliada como um valor numérico. Esta é a expressão na qual é calculado o desvio padrão.
expr2Esta é a expressão opcional para divisão.
expr3Esta é a expressão opcional a ordenar dentro de cada partição.
Retornos¶
O tipo de dados do valor retornado é DOUBLE.
Se todos os registros dentro de um grupo forem NULL, esta função retorna NULL.
Notas de uso¶
Para entradas de registro único, STDDEV e STDDEV_SAMP retornam NULL. Isto é diferente do comportamento do Oracle, onde STDDEV_SAMP retorna NULL para um único registro e STDDEV retorna 0.
Ao passar uma expressão VARCHAR, esta função converte implicitamente a entrada em valores de ponto flutuante. Se a conversão não puder ser executada, um erro é devolvido.
Quando esta função é chamada como uma função de janela e a cláusula OVER contém uma cláusula ORDER BY:
A palavra-chave DISTINCT é proibida e resulta em um erro de compilação SQL.
Um quadro de janela deve ser especificado. Se você não especificar uma quadro de janela, o seguinte quadro de janela implícito será usado:
RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
Para obter mais detalhes sobre quadros de janela, incluindo sintaxe e exemplos, consulte Notas de uso para quadros de janela.
Exemplos de funções de agregação¶
O exemplo a seguir calcula o desvio padrão para uma pequena amostra de números inteiros:
Observe que a função STDDEV_SAMP retorna o mesmo resultado:
O exemplo a seguir usa uma pequena tabela chamada menu_items, que lista os itens à venda em um food truck. Se desejar criar e carregar esta tabela, consulte Criação e carregamento da tabela menu_items.
Para encontrar o desvio padrão da amostra para o custo dos produtos vendidos (COGS) e o preço de venda para as linhas Dessert, execute esta consulta:
Exemplo de função de janela¶
O exemplo a seguir também usa a tabela menu_items (consulte Criação e carregamento da tabela menu_items), mas chama a função STDDEV como uma função de janela.
A função de janela particiona linhas pela coluna menu_category. Portanto, o desvio padrão é calculado uma vez para cada categoria, e esse valor é repetido no resultado para cada linha do grupo. Neste exemplo, as linhas devem ser agrupadas pela categoria do menu e pelo custo dos produtos vendidos.
A saída a seguir é um conjunto de resultados parciais para esta consulta (as primeiras 15 linhas):