Дисперсия множества числовых значений

 

Функция VARIANCE возвращает дисперсию множества числовых значений.

Синтаксические правила
  1. < Значимое выражение > в аргументе должно быть числовым типом данных или приводиться к нему.

Общие правила
  1. Дисперсия вычисляется по формуле, представленной на рисунке 1

    Формула вычисления дисперсии
    Рисунок 1. Формула вычисления дисперсии

    где x (i) – один из элементов множества x, n – число элементов, а ∑ – сумма, берется по всему множеству x.

  2. При n=0 возвращается NULL-значение, при n=1 дисперсия считается равной 0.

  3. Тип данных результата:

    • DECIMAL, если тип аргументов INT, SMALLINT, BIGINT, DECIMAL;

    • DOUBLE, если тип аргументов REAL, DOUBLE.

  4. Функция применяется к набору значений, полученных из аргумента путем исключения NULL-значений, т.е. записи с NULL-значением не учитываются при подсчете записей.

  5. Если задана опция DISTINCT, дубликаты из подсчета исключаются.

    select variance(all age), variance(distinct age)
      from person;
    
    | 137.92212600 | 136.66666666 |