VARIANCE fonction d'agrégation

La fonction VARIANCE renvoie la variance biaisée (division par n) d'un ensemble de nombres.

Read syntax diagramSkip visual syntax diagramVARIANCE(ALLDISTINCTexpression)

Le schéma est SYSIBM.

expression
Expression qui renvoie une valeur de tout type de données numériques intégré.

Si l'argument est DECFLOAT (n), le résultat est DECFLOAT (n) ; dans le cas contraire, le résultat est une virgule flottante à double précision. Le résultat peut être null.

La fonction est appliquée à l'ensemble de valeurs dérivées des valeurs d'argument par l'élimination des valeurs nulles. Si DISTINCT est spécifié, les valeurs en double redondantes sont éliminées. Lors de l'interprétation de la clause DISTINCT pour les valeurs décimales à virgule flottante numériquement égales, le nombre de chiffres significatifs dans la valeur n'est pas pris en compte. Par exemple, le nombre à virgule flottante décimale 123.00 n'est pas distinct du nombre à virgule flottante décimale 123. La représentation du nombre renvoyé par la requête sera l'une des représentations rencontrées (par exemple, 123.00 ou 123).

Si la fonction est appliquée à un ensemble vide, le résultat est une valeur nulle. Sinon, le résultat est la variance des valeurs de l'ensemble.

Le calcul utilisé pour déterminer la variance biaisée est logiquement équivalent à la formule suivante:
VARIANCE = SUM(expression**2)/COUNT(expression) - (SUM(expression)/COUNT(expression))**2

L'ordre dans lequel les valeurs sont ajoutées n'est pas défini, mais chaque résultat intermédiaire doit être compris dans la plage du type de données de résultat.

VAR ou VAR_POP peuvent être spécifiés à la place de VARIANCE.

Exemple

Définissez la variable hôte VARNCE, dont le type de données est une virgule flottante à double précision, sur la variance des salaires des employés du service'A00'de la table EMPLOYEE.
   SELECT VARIANCE(SALARY)
     INTO :VARNCE
     FROM EMPLOYEE
     WHERE WORKDEPT = 'A00'
VARNCE est défini sur environ 98763888.88 lors de l'utilisation de l'exemple de table.
L'ensemble de résultats suivant est affiché à titre de référence.
   SELECT SALARY FROM EMPLOYEE WHERE WORKDEPT = 'A00'
SALARY     
-----------
  152750.00
   66500.00
   49250.00
   46500.00
   39250.00

  5 record(s) selected.