Перейти к основному содержимому
Перейти к основному содержимому

avgWeighted

avgWeighted

Введена в версии v20.1

Вычисляет взвешенное среднее арифметическое.

Синтаксис

avgWeighted(x, weight)

Аргументы

Возвращаемое значение

Возвращает NaN, если все веса равны 0 или переданный параметр weight пуст, в противном случае — взвешенное среднее. Float64

Примеры

Пример использования

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Int8', (4, 1), (1, 0), (10, 2))
┌─avgWeighted(x, w)─┐
│                 8 │
└───────────────────┘

Смешанные целочисленные и дробные веса

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Float64', (4, 1), (1, 0), (10, 2))
┌─avgWeighted(x, w)─┐
│                 8 │
└───────────────────┘

Если все веса равны нулю, возвращается NaN

SELECT avgWeighted(x, w)
FROM VALUES('x Int8, w Int8', (0, 0), (1, 0), (10, 0))
┌─avgWeighted(x, w)─┐
│               nan │
└───────────────────┘

Пустая таблица возвращает NaN

CREATE TABLE test (t UInt8) ENGINE = Memory;
SELECT avgWeighted(t, t) FROM test
┌─avgWeighted(t, t)─┐
│               nan │
└───────────────────┘