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

array_cum_sum

Описание

Возвращает кумулятивные суммы элементов в массиве.

Синтаксис

array_cum_sum(array(bigint))
array_cum_sum(array(double))

Параметры

array: Элементы в массиве должны быть типа BIGINT (8-байтное знаковое целое число) или DOUBLE (8-байтное число с плавающей точкой).

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

Возвращает массив.

Возвращается NULL, если входной массив равен NULL.

Примеры

Пример 1: Возврат кумулятивных сумм массива.

select array_cum_sum([11, 11, 12]);
+---------------------------+
| array_cum_sum([11,11,12]) |
+---------------------------+
| [11,22,34] |
+---------------------------+

Пример 2: Использование этой функции с CAST.

select array_cum_sum([cast(11.33 as double),cast(11.11 as double),cast(12.324 as double)]);
+---------------------------------------------------------------------------------------+
| array_cum_sum([CAST(11.33 AS DOUBLE), CAST(11.11 AS DOUBLE), CAST(12.324 AS DOUBLE)]) |
+---------------------------------------------------------------------------------------+
| [11.33,22.439999999999998,34.763999999999996] |
+---------------------------------------------------------------------------------------+

Пример 3: Входной массив содержит null.

select array_cum_sum([null,1,2]);
+---------------------------------+
| array_cum_sum([null,1,2]) |
+---------------------------------+
| [null,1,3] |
+---------------------------------+

Пример 4: Входной массив равен null.

select array_cum_sum(null);
+---------------------------------+
| array_cum_sum(NULL) |
+---------------------------------+
| NULL |
+---------------------------------+