ClickHouse/docs/ru/sql_reference/aggregate_functions/index.md
Ivan Blinkov 03c575934b
Minor docs content improvements (#10304)
* Add link to flink-clickhouse-sink + fixes nearby

* Add link to dbal-doctrine

* cleanup ru toc root

* Sort out russian docs ToC a little bit

* Add link collection of commercial support services
2020-04-16 15:55:32 +03:00

2.1 KiB
Raw Blame History

toc_folder_title toc_priority toc_title
Агрегатные функции 33 Введение

Агрегатные функции

Агрегатные функции работают в привычном для специалистов по базам данных смысле.

ClickHouse поддерживает также:

Обработка NULL

При агрегации все NULL пропускаются.

Примеры

Рассмотрим таблицу:

┌─x─┬────y─┐
│ 1 │    2 │
│ 2 │ ᴺᵁᴸᴸ │
│ 3 │    2 │
│ 3 │    3 │
│ 3 │ ᴺᵁᴸᴸ │
└───┴──────┘

Выполним суммирование значений в столбце y:

SELECT sum(y) FROM t_null_big
┌─sum(y)─┐
│      7 │
└────────┘

Функция sum работает с NULL как с 0. В частности, это означает, что если на вход в функцию подать выборку, где все значения NULL, то результат будет 0, а не NULL.

Теперь с помощью функции groupArray сформируем массив из столбца y:

SELECT groupArray(y) FROM t_null_big
┌─groupArray(y)─┐
│ [2,2,3]       │
└───────────────┘

groupArray не включает NULL в результирующий массив.

Оригинальная статья