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

COVAR_SAMP

Описание​

Вычисляет выборочную ковариацию двух переменных. Если хотя бы одна из входных переменных равна NULL, соответствующая строка не учитывается при вычислении.

Синтаксис​

COVAR_SAMP(<expr1>, <expr2>)

Параметры​

ПараметрОписание
<expr1>Одно из выражений для вычисления. Поддерживаемый тип: Double.
<expr2>Одно из выражений для вычисления. Поддерживаемый тип: Double.

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

Возвращает выборочную ковариацию expr1 и expr2. Тип возвращаемого значения: Double. Если в группе нет допустимых данных, возвращает NULL.

Пример​

-- setup
create table baseall(
id int,
x double,
y double
) distributed by hash(id) buckets 1
properties ("replication_num"="1");

insert into baseall values
(1, 1.0, 2.0),
(2, 2.0, 3.0),
(3, 3.0, 4.0),
(4, 4.0, NULL),
(5, NULL, 5.0);
select covar_samp(x,y) from baseall;
+-----------------+
| covar_samp(x,y) |
+-----------------+
| 1 |
+-----------------+
select id, covar_samp(x, y) from baseall group by id;
+------+------------------+
| id | covar_samp(x, y) |
+------+------------------+
| 1 | 0 |
| 2 | 0 |
| 3 | 0 |
| 4 | NULL |
| 5 | NULL |
+------+------------------+