VARIANCE_SAMP função agregada

A função VARIANCE_SAMP retorna a variância de amostra (divisão por [n-1]) de um conjunto de números.

Read syntax diagramSkip visual syntax diagramVARIANCE_SAMP(ALLDISTINCTexpression)

O esquema é SYSIBM.

expressão
Uma expressão que retorna um valor de qualquer tipo de dado numérico embutido.

Se o argumento for DECFLOAT (n), o resultado é o DECFLOAT (34); caso contrário, o resultado será o ponto flutuante de precisão dupla. O resultado pode ser nulo.

A função é aplicada ao conjunto de valores que são derivados dos valores de argumento pela eliminação de valores nulos. Se DISTINCT for especificado, valores duplicados redundantes são eliminados. Quando a cláusula DISTINCT é interpretada para valores de ponto de flutuação decimal que são numericamente iguais, o número de dígitos significativos no valor não é considerado. Por exemplo, o número de vírgula flutuante decimal 123.00 não é diferente do número de vírgula flutuante decimal 123 A representação do número retornado da consulta é qualquer uma das representações encontradas (por exemplo, 123.00 ou 123).

Se a função for aplicada a um conjunto vazio ou um conjunto com apenas uma linha, o resultado será um valor nulo. Caso contrário, o resultado é a variância de amostra dos valores no conjunto.

O cálculo que é utilizado para determinar a variância da amostra é logicamente equivalente à seguinte fórmula:
VARIANCE_SAMP = ( SUM(expression**2) - ((SUM(expression)**2) / (COUNT(expression))) ) / 
                  (COUNT(expression) - 1)

A ordem na qual os valores são adicionados é indefinida, mas todo resultado intermediário deve estar dentro do intervalo do tipo de dados do resultado.

VAR_SAMP pode ser especificado no lugar de VARIANCE_SAMP.

Exemplo

Configure a variável host VARNCE para a variância de amostra dos salários para esses funcionários no departamento 'A00' da tabela EMPLOYEE. O tipo de dados para a variável host VARNCE é ponto flutuante de precisão dupla.
   SELECT VARIANCE_SAMP(SALARY)
     INTO :VARNCE
     FROM EMPLOYEE
     WHERE WORKDEPT = 'A00'
Esta declaração resulta em VARNCE sendo configurado para aproximadamente +2.19614375000000E+009 quando a tabela de amostra é usada.
O conjunto de resultados a seguir é mostrado para referência.
   SELECT SALARY FROM EMPLOYEE WHERE WORKDEPT = 'A00'
SALARY     
-----------
  152750.00
   66500.00
   49250.00
   46500.00
   39250.00

  5 record(s) selected.