Catégories :

Fonctions d’agrégation (Général) , Syntaxe et utilisation des fonctions de fenêtre (Général)

VARIANCE , VARIANCE_SAMP

Renvoie la variance d’échantillon des enregistrements non NULL dans un groupe. Si tous les enregistrements d’un groupe sont NULL, un NULL est renvoyé.

Alias :

VAR_SAMP

Syntaxe

Fonction d’agrégation

VARIANCE( [ DISTINCT ] <expr1> )
Copy

Fonction de fenêtre

VARIANCE( [ DISTINCT ] <expr1> ) OVER (
                                      [ PARTITION BY <expr2> ]
                                      [ ORDER BY <expr3> [ ASC | DESC ] [ <window_frame> ] ]
                                      )
Copy

Pour plus de détails sur la syntaxe window_frame, voir Syntaxe et utilisation des fonctions de fenêtre.

Arguments

expr1

expr1 doit correspondre à l’un des types de données numériques.

expr2

C’est l’expression à partir de laquelle effectuer la partition.

expr3

C’est l’expression à partir de laquelle effectuer le classement dans chaque partition.

Renvoie

Le type de données de la valeur renvoyée est NUMBER(<précision>, <échelle>). L’échelle dépend des valeurs en cours de traitement.

Notes sur l’utilisation

  • Pour les entrées à enregistrement unique, VAR_SAMP, VARIANCE et VARIANCE_SAMP renvoient tous NULL. Cela est différent du comportement Oracle, où VAR_SAMP renvoie NULL pour un seul enregistrement et VARIANCE renvoie 0.

  • Lorsqu’elle est transmise à une expression VARCHAR, cette fonction convertit implicitement l’entrée en valeurs à virgule flottante. Si la conversion ne peut pas être effectuée, une erreur est renvoyée.

  • Lorsque cette fonction est appelée en tant que fonction de fenêtre avec une clause OVER qui contient une clause ORDER BY :

    • Un cadre de fenêtre est nécessaire. Si aucun cadre de fenêtre n’est spécifié explicitement, le cadre de fenêtre implicite suivant est utilisé :

      RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW

      Pour plus d’informations sur les cadres de fenêtre, y compris la syntaxe, les notes sur l’utilisation et les exemples, voir Syntaxe et utilisation des fonctions de fenêtre.

    • L’utilisation du mot-clé DISTINCT à l’intérieur de la fonction de fenêtre est interdite et entraîne une erreur de compilation.

Exemples

Pour des exemples, voir VAR_SAMP.